1

私は4つのフィールドを持つMySQLデータベースを持っています:

id | planchanged | dataremoved | rolloverenabled |
1  | Yes         | Yes         | Yes             |
2  | NULL        |             |                 |
3  |             | Yes         |                 |
4  | Yes         |             | Yes             |
5  |             |             | NULL            |

このデータベースをクエリして、これら3つのフィールドにすべて「はい」がないレコードのみを表示するにはどうすればよいですか。一部のフィールドがNullになる可能性があることも考慮してください。したがって、その例に基づいて、私の結果はレコード2、3、4、および5を表示するはずです。

4

3 に答える 3

3

あなたはこれを行うことができます

SELECT * FROM TableName 
WHERE coalesce(planchanged,'-') <> 'Yes' OR 
coalesce(dataremoved,'-') <> 'Yes' OR
coalesce(rolloverenabled,'-') <>'Yes'

SQL FIDDLE DEMO

于 2013-01-14T02:21:48.043 に答える
3
SELECT * 
FROM yourTableName 
WHERE planchanged IS NULL OR planchanged <> 'Yes' 
OR dataremoved IS NULL OR dataremoved <> 'Yes' 
OR rolloverenabled IS NULL OR rolloverenabled <> 'Yes'

SQLフィドル

于 2013-01-14T02:27:37.777 に答える
0
SELECT * 
FROM  yourTableName 
WHERE planchanged IS NULL 
  OR  dataremoved IS NULL 
  OR  rolloverenabled IS NULL 
  OR  planchanged <> 'Yes' 
  OR  dataremoved <> 'Yes' 
  OR  rolloverenabled <> 'Yes'
于 2013-01-14T02:20:12.383 に答える