選擇一個表列有沒有去上一個條件選擇一個表列,在此查詢:?如何在條件
SELECT x,y FROM Z
我想要選擇在Y列Y的條件,如:
SELECT x (ONLY WHERE x_type = '20'), y FROM Z # just example of what i am trying to do :)
y_type是另一列,它的值是什麼上選擇Y或不依賴!,有沒有去做到這一點,或者我只是打錯門了?
選擇一個表列有沒有去上一個條件選擇一個表列,在此查詢:?如何在條件
SELECT x,y FROM Z
我想要選擇在Y列Y的條件,如:
SELECT x (ONLY WHERE x_type = '20'), y FROM Z # just example of what i am trying to do :)
y_type是另一列,它的值是什麼上選擇Y或不依賴!,有沒有去做到這一點,或者我只是打錯門了?
SELECT CASE WHEN y_type = 20 THEN y ELSE NULL END As y -- replace y_type with column to check
,.... -- other column list
FROM yourtable
你也可以使用一個帶有IN的CASE來表示多個值,例如。
SELECT CASE WHEN y_type IN (10,20) THEN y ELSE NULL END As y -- replace y_type with column to check
,.... -- other column list
FROM yourtable
你是男人... 謝謝...非常 – Dewan159
select case when x_type = '20' then
x else '' end,y from z
不知道的細節:
SELECT x
, CASE WHEN x_type = '20' THEN y
ELSE NULL
END AS y
FROM Z
或者你想要的很簡單:
SELECT x
, y
FROM Z
WHERE x_type = '20'
謝謝,......「簡單」的一個,不會與整個記錄一起返回!,我只是試圖控制選定的列... Y有時體積很大,所以,我不想稱它當它是類型= 20或某些!,找到我了嗎? – Dewan159
不,這是不可能的。您可以將列設置爲NULL,如果條件不滿足,雖然:
SELECT IF (x_type = 20, x, NULL) AS x
y
FROM Z
作品:),謝謝 – Dewan159
如果你想在x_type選擇,那麼你的SQL查詢應該是
SELECT x, y FROM Z where x_type = '20'
如果你想約束y_type,那麼你可能想添加OR y_type = 'nn'
到最後。我認爲你的問題是你是否需要在select子句和where子句中都有相同的列。答案是「不,你不需要。」
而對於那些行是'x_type'不是'20',究竟會在列中顯示'y'? –
我不認爲你的解釋清楚你想做什麼。 – Balanivash
return Null,如果有必要 – Dewan159