http://www.w3schools.com/sql/trysql.asp?filename=trysql_select_all
여기서 sql 문 연습하는데요 Products Database 에서
SELECT Price > 10 as expensive FROM [Products]
Where ProductID Between 1 and 10;
지금 이렇게 쓰니까
1~10 까지 1, 0 으로 true false 이런식으로 나오는데요
1 일때 (ture) 일때만 Price 가 나오게 하거나 ProductName 나오게 어떻게 하죠?
그러니까 5개만 true면 5개만 Price가
20, 30 , 40 , 50 , 60 이렇게 나오도록이요
재미 있는 사이트네요. ^^
SQL 을 직접 실습해 볼 수가 있네요.
SELECT 절에 ( Price > 10 ) 과 같은 조건식을 그대로 쓸 수 있는 경우는 일반적이지 않은 경우인 듯 합니다.
DBMS 가 뭔지 궁금하네요? (일반적으로 통용되는 문법에서 약간 벗어난 듯.)
이것 저것 시도해 봤는데 ( Decode, Case, If ) 다 실패 했네요.
원하는게 혹시 5건만 출력되면 되는 거라면?
간단하게 조건식을 Where 절로 내려주시면 됩니다.
SELECT ProductID , ProductName , Price FROM Products WHERE ProductID BETWEEN 1 AND 10 AND Price > 10 ;
10건 출력 건중 5건은 자료가 보이고 5건은 공란으로 보여야 한다면?
해당 DBMS 의 문법을 좀 알아야 할 듯 하네요.
표준 문법으로 하면
SELECT ProductID , CASE WHEN Price > 10 THEN ProductName END AS ProductName , CASE WHEN Price > 10 THEN Price END AS Price FROM Products WHERE ProductID BETWEEN 1 AND 10 AND Price > 10 ;