-2
SELECT Col1, Col2, Col3
FROM Table 

結果セット: (サンプルテーブル)

 Col1        Col2        col3
----------- ---------- -----------
Value       Value      Value
Value       Value      Value         
Value       Value      Value         
Value       Value      Value         
Value       Value      Value 

NULL/空の値を持つ Col3 を表示します(必要に応じて Col3 が NULL をサポートしていると仮定します)

状態( WHERE Col > 2| WHERE chareindex( 'x' , Col1 )等)

表の最終結果: (ここの条件は行 2 と 5 に当てはまります)

  Col1        Col2        col3
----------- ---------- -----------
1 Value       Value      NULL
2 Value       Value      Value         
3 Value       Value      NULL         
4 Value       Value      NULL         
5 Value       Value      Value 

質問のより表現された方法:

SELECT EmployeeID, Firstname, Lastname,
From Employees 

結果セット:

EmployeeID  FirstName  LastName
----------- ---------- --------------------
1           Nancy      Davolio
2           Andrew     Fuller
3           Janet      Leverling
4           Margaret   Peacock
5           Steven     Buchanan
6           Michael    Suyama
7           Robert     King

上記のコードでは、employeeID の条件があり、employeeID 3 と 6 がその条件に当てはまるとしましょう

私は達成しようとしています:

EmployeeID  FirstName  LastName
----------- ---------- --------------------
1           Nancy      NULL
2           Andrew     NULL
3           Janet      Leverling
4           Margaret   NULL
5           Steven     NULL
6           Michael    Suyama
7           Robert     NULL

この結果セットを達成するには、どのような条件とどのように設定する必要がありますか

  • 「ベースコード」を完全に変更できます
  • 'Lastname' col (または col3 ) の値がわからない
  • 偽の条件値のすべての行と列の値を保持する必要があります
  • テーブルが大きい

質問の別の言い方: (質問の最初の段落に基づく)

col1 の値が条件に当てはまる行の場合、Col3 の値を表示し、そうでない場合は NULL/空を表示し、すべての行の col2 の値を保持します。

4

2 に答える 2