>데이터 베이스 >MySQL 튜토리얼 >MySQL 쿼리에서 IF ELSE 논리를 어떻게 시뮬레이션할 수 있습니까?

MySQL 쿼리에서 IF ELSE 논리를 어떻게 시뮬레이션할 수 있습니까?

DDD
DDD원래의
2024-12-01 15:30:15546검색

How Can I Simulate IF ELSE Logic in MySQL Queries?

MySQL 쿼리에서 IF ELSE 문을 에뮬레이트하는 방법

MySQL에서는 IF ELSE 문이 기본적으로 지원되지 않습니다. 그러나 CASE 표현식을 사용하면 비슷한 기능을 얻을 수 있습니다.

CASE 표현식 이해

CASE 표현식은 일련의 조건을 평가하고 첫 번째 일치 항목을 기반으로 결과를 반환합니다. 상태. 다음 형식을 취합니다.

CASE
  WHEN condition1 THEN result1
  WHEN condition2 THEN result2
  ...
  ELSE default_result
END

질문에 IF ELSE 문을 복제하려면 다음과 같이 CASE 표현식을 사용합니다.

SELECT col1, col2, 
  (CASE 
    WHEN (action = 2 AND state = 0) THEN 1
    ELSE 0
  END) AS state
FROM tbl1;

이 쿼리에서:

  • 조건(작업 = 2 AND state = 0) 작업 열이 2와 같고 상태 열이 0인지 확인합니다.
  • 이 조건이 true이면 값 1을 반환합니다.
  • 그렇지 않으면 , 값 0을 반환합니다.
  • 결과 값은 SELECT의 별칭 상태에 할당됩니다. list.

반환 값 액세스

쿼리가 실행되면 결과 집합의 상태 열에서 계산된 값에 액세스할 수 있습니다. 예제에서는 다음 코드를 사용할 수 있습니다.

$row['state'] 
// This should equal 1

이 쿼리는 CASE 표현식에 지정된 조건을 기반으로 상태 값만 계산합니다. 데이터베이스의 상태 열은 업데이트되지 않습니다.

위 내용은 MySQL 쿼리에서 IF ELSE 논리를 어떻게 시뮬레이션할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.