sql语句为什么不报错

2019-01-02 21:44发布

select * from dbcontinfo where contno=(select contno from dual);

虚拟表dual没有contno字段,单独执行select contno from dual报错,可以整个语句执行就是查询的所有的结果,相当于条件是1=1

标签: sql oracle
2条回答
唯我独甜
2楼-- · 2019-01-02 22:20

因为这个字段是dbcontinfo的字段,子查询可以使用父查询用到的表。学习了

查看更多
女痞
3楼-- · 2019-01-02 22:29

很简单啊,因为这个字段是dbcontinfo的字段,子查询可以使用父查询用到的表,你试试下面的SQL行不行?

select * from dbcontinfo where contno=(select xxx from dual);
查看更多
登录 后发表回答