`

SQL查询一个表中另外一个表不存在的数据

sql 
阅读更多
#方法一:使用 not in ,容易理解,效率低  ~执行时间为:1.395秒~
SELECT COUNT(1) FROM ecs_goods WHERE ecs_goods.goods_id NOT IN (SELECT ecs_member_price.goods_id FROM ecs_member_price);

#方法二:使用 left join...on... , "B.ID isnull" 表示左连接之后在B.ID 字段为 null的记录  ~执行时间:0.739秒~
SELECT COUNT(1) FROM ecs_goods LEFT JOIN ecs_member_price ON ecs_goods.goods_id=ecs_member_price.goods_id WHERE ecs_member_price.goods_id IS NULL;


#方法三:逻辑相对复杂,但是速度最快  ~执行时间: 0.570秒~
SELECT COUNT(1) FROM  ecs_goods c WHERE (SELECT COUNT(1) AS num FROM ecs_member_price WHERE ecs_member_price.goods_id=ecs_goods.goods_id) = 0;
分享到:
评论

相关推荐

    工作中非常有用的工具sql语句

    1、将查询结果写到另外一个新表里面(通过sql来建立表) 2、将查询结果集插入到已经存在的某个表中的对应字段 3、删除数据库的重复记录(所有字段数据都相同的才算重复,也可以自己定义重复标准 4、两张表结构...

    跟我学 SQL ——基本结构化查询语言

    最新的版本是SQL-99,还有一个新标准SQL-200n尚处于制定过程中。大多数的数据库都至少遵守ANSI-92标准的部分子集。不过,目前对最新标准的有效性还存在一些争论。专有数据库制造商根据这些标准开发自己的产品,同时...

    MySQL下将一个表的数据插入到另外一个表的实现语句

    如果2张表的字段一致,并且希望插入全部数据,可以用这种方法: Code: 代码如下: INSERT INTO 目标表 SELECT * FROM 来源表; 比如要将 articles 表插入到 ... 如果您需要只导入目标表中不存在的记录,可以参考另外

    SQL COOKBOOK(压缩1/2)

    4.4从一个表向另外的表中复制行 4.5复制表定义 4.6一次向多个表中插入记录 4.7阻止对某几列插入 4.8在表中编辑记录 4.9当相应行存在时更新 4.10用其他表中的值更新 4.11合并记录 4.12从表中删除所有记录 ...

    2009达内SQL学习笔记

    select:从一个或多个表中检索一个或多个数据列。包含信息:想选择什么表,从什么地方选择。必须要有From子句。(最常用) 当从多张表里查询的时候,会产生笛卡尔积;可用条件过滤它。 当两个表有相同字段时必须加...

    SQL语法大全

    Source参数可以是一个Command对象名称、一段SQL命令、一个指定的数据表名称或是一个Stored Procedure。假如省略这个参数,系统则采用Recordset对象的Source属性。 ActiveConnection Recordset对象可以通过...

    delphi开发SQL Sever初学者最佳范例

    源程序中演示了在delphi开发SQL Sever数据库时,在系统启动时根据用户配置文件自动判断系统所需的数据库、表是否存在,如果不存在,则根据配置文件新建用户所需的数据库、数据表。这个源程序代码规范,注释详细,...

    SQL 优化原则

    目前的需求是这样的,要求在职工表中查询名字中包含cliton的人。可以采用如下的查询SQL语句: select * from employee where last_name like '%cliton%'; 这里由于通配符(%)在搜寻词首出现,所以Oracle系统不使用...

    数据库基础实验的实验报告附图

    此为吉林大学数据库的实验报告,实验内容为: 实验一 熟悉MySQL环境及SQL定义语言 ...16) 统计3门以上课程不及格的学生把相应的学生姓名、系别追加到另外一个表中 2.熟练掌握INSERT,UPDATE,DELETE语句并能综合应用;

    Access传递查询_说明

    Access传递查询_说明 说明和示例 ... 另外需要注意的是由于传递查询是发往Sql Server处理数据,因此传递查询不能处理Access独有函数和自定义函数,也不能直接对本地Access表进行操作。 三、存储过程的使用

    SQL智能完成工具BDB

    <br>2、效率方面的优化, 系统会优先从资源文件中去取数据表结构,文件不存在, 则从数据库去取。 <br> 三、查询分析另外支持的一些功能 <br>1、支持CTRL+ENTER键执行。(同时支持ALT+ENTER键...

    SQL COOKBOOK(压缩2/2)

    4.4从一个表向另外的表中复制行 4.5复制表定义 4.6一次向多个表中插入记录 4.7阻止对某几列插入 4.8在表中编辑记录 4.9当相应行存在时更新 4.10用其他表中的值更新 4.11合并记录 4.12从表中删除所有记录 ...

    SQL注入攻击与防御

    SQL注入是Internet上最危险、最有名的安全漏洞之一,本书是目前唯一一本专门致力于讲解SQL威胁的图书。本书作者均是专门研究SQL注入的安全专家,他们集众家之长,对应用程序的基本编码和升级维护进行全面跟踪,详细...

    数据库表设计.docx

    2) 一个表里被设为主键的字段的值必须是唯一的,也就是说如果一个字段被设为主键,这个表所有的数据列表里这个字段的值不可能有重复的。 3) 被设为主键的字段不能插入空值。 4) 被设为主键的字段的值是不能更改的。...

    mykit-db-sync:mykit中分离出的强大的数据库同步工具——mykit-db-sync。 基于java开发的功能强大、配置灵活的数据库同步工具,目前支持MySQL、SQL Server和Oracle数据库的同步,在实际应用场景中,我们经常需要定期将一个数据库的数据同步到另外一个数据库中,常见的一种做法是将源数据库的数据dump为sql文件,然后到目标数据库执行sql文件完成数据库的导入,但是这种方法至少存在以下问题: - 需要手工操作,效率低 - 当涉及数据表较多时,容易遗漏、出错 -

    在实际应用场景中,我们经常需要定期将一个数据库的数据同步到另外一个数据库中,常见的一种做法是将源数据库的数据dump为sql文件,然后到目标数据库执行sql文件完成数据库的导入,但是这种方法至少存在以下问题: ...

    SQL注入攻击与防御(安全技术经典译丛)

    另外,本书还专门从代码层和系统层的角度介绍了避免SQL注入的各种策略和需要考虑的问题。  本书主要内容  SQL注入一直长期存在,但最近有所增强。本书包含所有与SQL注入攻击相关的、当前已知的信息,凝聚了由本书...

    Toad 使用快速入门

    SQL编辑器中不仅包括标准的编辑命令,也包括一些增强的功能,如快速查询表中的字段、将SQL语句的内容格式化等等。这个窗口可以处理大到4GB 的内容,对大的开发项目来说非常有用。便捷的书签可以让开发人员非常容易地...

    ASP EXCEL导入SQL

    这个原则是源自于我们对于数据库表的数据操作:(生)、select(见)、(变)和(灭),所以有时候CRUD也写作为RUDI,其中的I就是,这四个操作是一种原子操作,即一种无法再分的操作,通过它们可以构造复杂的操作过程,正如...

    基于索引的SQL语句优化之降龙十八掌

    客服业务受到SQL语句的影响非常大,在规模比较大的局点,往往因为一个小的SQL语句不够优化,导致数据库性能急剧下降,小型机idle所剩无几,应用服务器断连、超时,严重影响业务的正常运行。因此,称低效的SQL语句为...

    数据分析系统.docx

    数据分析系统 一、项目概述 名称:轻量数据分析项目 日期:2012年1月底 目标用户:中小企业数据分析用户 二、项目背景 当前有许多的数据分析系统,包括BI等,都是以重量级的数据分析系统存在。有部分企业或者个人...

Global site tag (gtag.js) - Google Analytics