mysql - 请教一条sql
问题描述

当前记录里,如果某个手机号下存在TRANSFER_AMOUNT为null,这个手机号就不会被查出来,即当前四条记录里真正应该只查出最后一条。
问题解答
回答1:select * from table where MOBILE_PHONE_NO not in ( select MOBILE_PHONE_NO from table where TRANSFER_AMOUNT is null)回答2:
@RandyO 的回答从结果看应该是没问题的,如果从性能方面考虑,可以尝试下面的写法:
select * from table t1 where not exists ( select 1 from table t2 where t2.MOBILE_PHONE_NO = t1.MOBILE_PHONE_NO and t2.TRANSFER_AMOUNT is null limit 1)回答3:
你这四条记录中的TRANSFER_AMOUNT值有三条记录是不为null,如果是TRANSFER_AMOUNT为null,应该查询出来三条记录,还是我没理解你的意思呢?
回答4:where TRANSFER_AMOUNT is not null order by RESV_ID desc limit 1
即 TRANSFER_AMOUNT 不为NULL; 根据RESV_ID 倒序排列;只取一条结果.
回答5:SELECT * FROM 表 WHERE MOBILE_PHONE_NO != (SELECT MOBILE_PHONE_NO FROM 表 WHERE TRANSFER_AMOUNT =’’)我也刚学的,不知道这么写行不行
回答6:RandyO 正解!一个简单的子查询
相关文章:
1. 在windows下安装docker Toolbox 启动Docker Quickstart Terminal 失败!2. python - Flask内如何跳转至其他页面。3. python 多进程 或者 多线程下如何高效的同步数据?4. python - 两千万条结构化数据怎么进行数据分析5. javascript - 关于iscroll的一段代码,希望有人解释6. php - mysql 模糊搜索问题7. objective-c - 做一个百度地图定位的demo,结果出错好多。8. javascript - mock.js可以存储数据吗9. 想写一个python分析统计apache 日志文件的脚本10. mysql优化 - mysql 多表联合查询中有order by和sum的情况下,索引如何设计?

网公网安备