我正在嘗試提出一個查詢,其中給定如下表,顯示游戲串列,但隱藏 inProgress = 0 的行的答案列。

我能想到的唯一方法是做一個簡單的查詢,例如SELECT * FROM game WHERE inProgress = 0;是否有任何其他 SQL 函式讓我只能隱藏或將答案列的值設定為 inProgress = 0 的所需值?
謝謝!
uj5u.com熱心網友回復:
使用case. 這就像一個if/else用于選擇列。
select
gameId,
case
when inProgress = 0 then
null
else
answer
end as answer,
inProgress
from game
這將顯示所有行,game但如果inProgress = 0它不會顯示答案。
uj5u.com熱心網友回復:
看一下 MySql 的 case 陳述句。您不一定能隱藏該列,但您可以在其中輸入 N/A 或 -1 之類的值,以顯示您想要了解的內容。
SELECT gameId, inProgress, CASE when inProgress = 0 then -1 ELSE answer AS answer FROM game;
uj5u.com熱心網友回復:
一種類似但更緊湊的case 運算式,您可以使用行內 if
select gameId, if(inProgress = 1, null, answer) Answer, InProgress
from game;
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/475221.html
