Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

OR이 있는 MySQL SELECT IF 문?

<시간/>

OR과 함께 SELECT IF 문을 사용할 수 있습니다. OR을 사용한 선택을 이해하기 위해 테이블을 생성해 보겠습니다. 테이블을 생성하는 쿼리는 다음과 같습니다 -

mysql> 테이블 EmployeeInformation 생성 -> ( -> EmployeeId int, -> EmployeeName varchar(100), -> EmployeeStatus varchar(100) -> );쿼리 OK, 영향을 받은 행 0개(0.68초)

삽입 명령을 사용하여 테이블에 일부 레코드를 삽입하십시오. 쿼리는 다음과 같습니다 -

mysql> EmployeeInformation 값에 삽입(1,'Sam','FullTime');쿼리 OK, 1행 영향(0.23초)mysql> EmployeeInformation 값에 삽입(2,'Mike','PartTime');Query OK, 1행 영향(0.14초)mysql> EmployeeInformation values(3,'Bob','Intern')에 삽입 'FullTime');쿼리 OK, 1행 영향(0.16초)mysql> EmployeeInformation 값에 삽입(5,'John','FullTime');쿼리 OK, 1행 영향(0.19초)mysql> EmployeeInformation 값에 삽입( 6,'Johnson','PartTime');쿼리 OK, 1행 영향(0.19초)mysql> EmployeeInformation 값에 삽입(7,'Maria','Intern');Query OK, 1행 영향(0.12초) 

이제 select 명령을 사용하여 테이블의 모든 레코드를 표시해 보겠습니다. 쿼리는 다음과 같습니다 -

mysql> EmployeeInformation에서 *선택;

출력

+------------+--------------+----------------+| 직원 ID | 직원 이름 | 직원 상태 |+------------+-------------+----------------+| 1 | 샘 | 정규직 || 2 | 마이크 | 파트타임 || 3 | 밥 | 인턴 || 4 | 캐롤 | 정규직 || 5 | 존 | 정규직 || 6 | 존슨 | 파트타임 || 7 | 마리아 | 인턴 |+------------+-------------+----------------+7행 세트(0.00초)

다음은 OR로 SELECT IF 문을 수행하는 쿼리입니다. 아래 쿼리에서 EmployeeStatus FullTime 및 Intern이 있는 EmployeeName만 가져오고 그렇지 않으면 직원의 상태를 얻습니다.

쿼리는 다음과 같습니다 -

mysql> EmployeeInformation에서 상태로 if(EmployeeStatus='FullTime' orEmployeeStatus='Intern',EmployeeName,EmployeeStatus) 선택;

출력

+----------+| 상태 |+---------+| 샘 || 파트타임 || 밥 || 캐롤 || 존 || 파트타임 || Maria |+----------+7행 세트(0.00초)