sql - 有或没有 where 条件的查询结果相同
问题描述
我正在为此编写 sql 查询列出所有在犯罪 ID 10089问题陈述中涉及任何犯罪代码指控的犯罪分子的姓名,但无论有无 where 条件,我的结果都是相同的
select *
from criminals c
join crimes cms
on c.criminal_id = cms.criminal_id
join crime_charges cc on cc.crime_id=cms.crime_id
order by c.first, c.last;
where (cc.fine_amount is not null) and (cc.crime_id==10089);
解决方案
在 order by 之前使用 where 条件并删除分号,因为它表示查询结束,因此 where 条件被视为单独的查询。
select *
from criminals c
join crimes cms
on c.criminal_id = cms.criminal_id
join crime_charges cc on cc.crime_id=cms.crime_id
where (cc.fine_amount is not null) and (cc.crime_id=10089)
order by c.first, c.last;
推荐阅读
- css - HTML CSS 如何划分ta
- typescript - TypeScript 检查字符串是否是接口中的键值
- pyspark - 在 pyspark 上可视化决策树?
- php - 为 foreach() laravel 8 提供的参数无效
- three.js - 我们什么时候需要使用 renderer.outputEncoding = THREE.sRGBEncoding
- json - Flutter Quiz Api 尝试调用 []() NoSuchMethodError
- r - geom_line 在 R 中的 x 轴上具有组
- reactjs - 使用 react-markdown 的有序列表
- android - 如何制作一个同时接受 Activity 和 Fragment 作为参数上下文的函数
- node.js - ERR_CONNECTION_REFUSED NodeJS/Express