2009-08-13 3 views
0

특정 열의 값이 '25'보다 높으면 열에 'Y'또는 'N'을 반환하는 방법이 있습니까? 내가 MySQL 용 ZOSSQL 결과의 Y 또는 N

+3

사용중인 SQL의 버전/구현 (Oracle/SQL Server/MySQL 등)을 지정해야합니다. .) –

+0

죄송합니다 ... DB2 zos입니다. –

답변

7
SELECT CASE WHEN Col1 > 25 THEN 'Y' ELSE 'N' END As Value1 
FROM Table1 
0

를 사용하여 SQL의 CASE 문

0
SELECT CASE WHERE columnname > 25 THEN 'Y' ELSE 'N' END FROM table; 
유효한 또 다른 대안이 열 값 및 재 Y 또는 N에서 사용자 정의 기능 먹이 생성되는 IF 및 CASE 문 이격
0
select 
case when somecolumn > 25 then 'Y' else 'N' end as somename 
from sometable; 
0

Select If(myColumn > 25, 'Y', 'N') From myTable

0

.

이것은 상당한 이점이 있습니다. 이 조건을 SQL 문 이상에서 선택하고 나중에 조건 변경 (30 개 이상)이라고 가정하면 코드를 변경할 수있는 곳은 하나뿐입니다. 함수를 사용하면 복잡성과 오버 헤드가 추가되기 때문에 항상 최적은 아니지만이 방법의 유지 관리 이점을 과소 평가하지 마십시오. 사소한 점은 인라인 사례보다 기능의 이름을 더 의미 있고 스스로 문서화 할 수 있다는 것입니다.

관련 문제