2 つの列を返す select ステートメントがあります。
ID | IDParent
次に、私のプログラムでテストする必要がありますif IDParent is < 1 then use ID ELSE use IDParent
SQL で If Else like 条件を使用して単一の値のみを返す方法はありますか?
2 つの列を返す select ステートメントがあります。
ID | IDParent
次に、私のプログラムでテストする必要がありますif IDParent is < 1 then use ID ELSE use IDParent
SQL で If Else like 条件を使用して単一の値のみを返す方法はありますか?
あなたが使用することができますCASE
SELECT ...,
CASE WHEN IDParent < 1 THEN ID ELSE IDPArent END AS ColumnName,
...
FROM tableName
ここでは、CASE Statement
結果を使用して検索します。
select (case when condition1 then result1
when condition2 then result2
else result3
end) as columnname from tablenmae:
例えば:
select (CASE WHEN IDParent< 1 then ID
else IDParent END) as columnname
from tablenmae
SELECT CASE WHEN IDParent < 1
THEN ID
ELSE IDParent
END AS colname
FROM yourtable
クエリは次のようになります
SELECT (CASE WHEN tuLieuSo is null or tuLieuSo=''
THEN 'Chưa có đĩa'
ELSE 'Có đĩa' End) AS tuLieuSo,moTa
FROM [gPlan_datav3_SQHKTHN].[dbo].[gPlan_HoSo]
SQL サーバー 2012
with
student as
(select sid,year from (
values (101,5),(102,5),(103,4),(104,3),(105,2),(106,1),(107,4)
) as student(sid,year)
)
select iif(year=5,sid,year) as myCol,* from student
myCol sid year
101 101 5
102 102 5
4 103 4
3 104 3
2 105 2
1 106 1
4 107 4
select
CASE WHEN IDParent is < 1 then ID else IDParent END as colname
from yourtable
ユニオン コンストラクトを使用することもできます。CASE が一般的な SQL 構造であるかどうかはわかりません...
SELECT ID FROM tabName WHERE IDParent<1 OR IDParent IS NULL
UNION
SELECT IDParent FROM tabName WHERE IDParent>1