2017-09-25 105 views
2

sqitch数据库架构管理工具这是跨越一个SQL查询来如下:什么意思,哪里错误;在SQL查询

BEGIN; 

select subject , comment , timestamp 
from tutorial.video 
where false; 

ROLLBACK; 

以上查询是验证策略的一部分;什么是的解释或应用?在上面的查询?

回答

2

这是当查询应该不返回任何结果使用WHERE条件。 支撑布尔值有些DBMS,Postgres的,例如,使用具有该取代经典where 1=1工作。

基本上然后,where false是相同的where 1=0

+0

所以其Postgres的只有特定的命令?它会用mysql吗? –

+0

我有机会使用,只是在Postgres的,但支持布尔值的任何DBMS应罚款与语法,我猜。 – P3trur0

+1

刚刚在MySQL上试过,查询工作正常。我做了'select * from table where false;'并且它没有返回任何值。然后我确实从表中选择*,并返回数据。 – P3trur0

2

至于我可以告诉它是让你取回的都是0的结果。 同做这样的事情,其中​​1 = 0