sql关于联表查询不存在
来源:互联网 发布:php网页设计培训 编辑:程序博客网 时间:2024/06/09 17:55
我们先来比对一下这两句sql:
一、
SELECT * FROM (SELECT d.* ,g.goods_score AS gid FROM mall_goods g RIGHT JOIN (select a.*, b.name _state FROM mall_goods_info a, code b where 1=1 and b.type = '商品状态' and a.store_id = '317' and a.del_flag = 1 and a.state = b.code ) d ON g.id =d.id ) e WHERE ISNULL(e.gid)
二、
select a.*, b.name _state from mall_goods_info ainner join code b on b.type = '商品状态' and a.state = b.code where a.store_id = '317' and a.del_flag = 1 and a.id not in (select mall_goods.id from mall_goods)
查询结果一样,主要的问题就是查询某张表的某个字段的值不存在于另一张表的结果集。
一 的方法是先righ join等于的,因为是右连接,所以不等于的mall_goods表就是null,最后where isnull
二的方法是直接not in,这个值不存在另一张表
查询时间对比(对比了几次):二的结果快于一的。
阅读全文
0 0
- sql关于联表查询不存在
- 开发:异常收集之 sql查询 表或视图不存在
- 关于使用powerdesigner 导入oracle数据库表,使用查询语句是查询报表不存在
- SQL关于多表查询
- SQL查询一个表中另外一个表不存在的数据。
- sql查询存在一张表而不存在另外一张表的三种方法
- Sql查询语句中,添加表中不存在的列并设定列的固定值
- Oracle表明明存在SQL查询数据提示表不存在异常
- Kylin的保存查询SQL时提示kylin_metadata2_user类似的表不存在
- 关于Mongodb查询不存在的字段时的问题
- mysql 查询表出错 提示表不存在
- 关于sql联合查询
- 关于SQL分段查询
- sql关于时间查询
- 关于SQL分区查询
- 关于SQL模糊查询
- SQL关于连接查询
- 关于SQL查询效率
- 函数形参默认值
- 设计模式的艺术之道--职责链模式
- LinkedList源码分析详解
- java单链表操作
- 下拉框+文本框+搜索按钮
- sql关于联表查询不存在
- 2-jvm概述
- linux文件系统简介
- 常用的SQL技巧和常见问题
- 阿里云免费SSL证书安装教程及申请地址
- poj 1159 Palindrome LCS一维滚动数组优化
- Android开发人员不得不收集的代码(持续更新中)
- Android 与 H5 之间的互调
- 微信小程序:使用swiper与scroll-view实现tab选项卡(2)