집 >데이터 베이스 >MySQL 튜토리얼 >MySQL의 IF() 함수를 사용하여 SELECT 문의 열 값을 조건부로 조정하려면 어떻게 해야 합니까?
SELECT 문에서 MySQL의 IF() 함수를 사용한 조건부 열 값 조정
MySQL의 SELECT
문은 데이터를 검색합니다. 경우에 따라 동일한 행 내의 다른 열을 기반으로 열의 출력을 조건부로 수정해야 합니다. IF()
기능이 이를 용이하게 합니다.
시나리오:
report
테이블이 있고 amount
열을 기반으로 type
열의 기호를 조작해야 한다고 가정해 보겠습니다. type
이 'P'이면 amount
는 양수여야 합니다. 'N'인 경우 음수여야 합니다.
초기 쿼리:
<code class="language-sql">SELECT id, amount FROM report;</code>
조건부 수정:
IF()
을 사용하여 원하는 조건부 조정을 달성하는 방법은 다음과 같습니다.
<code class="language-sql">SELECT id, IF(type = 'P', amount, amount * -1) AS amount FROM report;</code>
설명:
IF()
함수는 세 가지 매개변수를 사용합니다.
condition
: 평가할 조건(type = 'P'
).true_value
: 조건이 true인 경우 반환되는 값(amount
).false_value
: 조건이 false인 경우 반환되는 값(amount * -1
).AS amount
은 IF()
함수의 결과에 출력용 별칭 amount
을 할당합니다.
NULL 값 처리:
amount
이 NULL
일 수 있는 경우 강력한 처리를 위해 IFNULL()
을 사용하세요.
<code class="language-sql">SELECT id, IF(type = 'P', IFNULL(amount, 0), IFNULL(amount, 0) * -1) AS amount FROM report;</code>
IFNULL()
은 두 가지 인수를 사용합니다.
value
: NULL
(amount
)에 대해 확인할 값입니다.default_value
: value
이 NULL
(0)인 경우 반환할 값입니다.추가 자료:
MySQL 흐름 제어 기능에 대한 자세한 내용은 공식 문서를 참조하세요. https://www.php.cn/link/0cfe3c931a81acba365b335768dd0d93
위 내용은 MySQL의 IF() 함수를 사용하여 SELECT 문의 열 값을 조건부로 조정하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!