在大多数SQL产品中,我可以从没有表或虚拟表中选择如下:
-- Oracle
SELECT 1 FROM DUAL
-- Many other SQL products (including Ingres)
SELECT 1
Run Code Online (Sandbox Code Playgroud)
有时,我想在上面的语句中添加一个条件,以便根据条件检索0或1条记录
-- Oracle
SELECT 1 FROM DUAL WHERE 1 = 0
-- Many other SQL products (but not Ingres)
SELECT 1 WHERE 1 = 0
Run Code Online (Sandbox Code Playgroud)
但上述内容对Ingres 10.0不起作用.我该怎么做?
我没有使用过Ingres但我从你的问题中假设a FROM
是强制性的,如果有的话WHERE
?在那种情况下怎么样
SELECT 1 FROM (SELECT 1 AS C) AS T WHERE 1 = 0
Run Code Online (Sandbox Code Playgroud)
要么
SELECT CASE WHEN 1 = 0 THEN 1 ELSE 0 END
Run Code Online (Sandbox Code Playgroud)
(最后一个将始终返回一行,但允许您检查条件)