mysql中not exists的简单理解

http://www.cnblogs.com/glory-jzx/archive/2012/07/19/2599215.html

http://sunxiaqw.blog.163.com/blog/static/990654382013430105130443/

这篇文章写的很清楚了,请参考,多谢原作者。

select loan_user_id from sp_invest_project p where exists(
                         select 1 from temp_stock_enterprise e where e.user_id = p.loan_user_id
                         ) ;

select loan_user_id from sp_invest_project p where  loan_user_id in (
                         select user_id  from temp_stock_enterprise
                         ) ;

上述两种写法应该是一致的。

时间: 2024-08-11 09:32:58

mysql中not exists的简单理解的相关文章

JavaScript中this指向的简单理解

首先必须要说的是,this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁,实际上this的最终指向的是那个调用它的对象(这句话有些问题,后面会解释为什么会有问题,虽然网上大部分的文章都是这样说的,虽然在很多情况下那样去理解不会出什么问题,但是实际上那样理解是不准确的,所以在你理解this的时候会有种琢磨不透的感觉),那么接下来我会深入的探讨这个问题. 为什么要学习this?如果你学过函数式编程,面向对象编程,那你肯定知道干什么用的,如果你没有学过,那么暂时可以不

Java中多态的一些简单理解

什么是多态 1.面向对象的三大特性:封装.继承.多态.从一定角度来看,封装和继承几乎都是为多态而准备的.这是我们最后一个概念,也是最重要的知识点. 2.多态的定义:指允许不同类的对象对同一消息做出响应.即同一消息可以根据发送对象的不同而采用多种不同的行为方式.(发送消息就是函数调用) 3.实现多态的技术称为:动态绑定(dynamic binding),是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法. 4.多态的作用:消除类型之间的耦合关系. 5.现实中,关于多态的例子不

个人对Java中多态的一些简单理解

什么是多态 面向对象的三大特性:封装.继承.多态.从一定角度来看,封装和继承几乎都是为多态而准备的.这是我们最后一个概念,也是最重要的知识点. 多态的定义:指允许不同类的对象对同一消息做出响应.即同一消息可以根据发送对象的不同而采用多种不同的行为方式.(发送消息就是函数调用) 实现多态的技术称为:动态绑定(dynamic binding),是指在执行期间判断所引用对象的实际类型,根据其实际的类型调用其相应的方法. 多态的作用:消除类型之间的耦合关系. 现实中,关于多态的例子不胜枚举. 下面是多态

SQL中锁表语句简单理解(针对于一个表)

锁定数据库的一个表 复制代码代码如下: SELECT * FROM table WITH (HOLDLOCK) 注意: 锁定数据库的一个表的区别 复制代码代码如下: SELECT * FROM table WITH (HOLDLOCK) 其他事务可以读取表,但不能更新删除 复制代码代码如下: SELECT * FROM table WITH (TABLOCKX) 其他事务不能读取表,更新和删除 SELECT 语句中"加锁选项"的功能说明 SQL Server提供了强大而完备的锁机制来帮

Mysql中limit用法及简单按序查寻示例

limit 接收一个或两个参数. 可以实现前排前几行的数据或排后几行的数据,或者中间几行的数据 order by + 关键字  表示按关键字什么顺序排列,默认是正序,从小到大, order by + 关键字 desc 表示按倒序排列,从大到小顺序. 如:倒序排列取前几行数据: order by id desc limit 10 按照id的倒序排序 取出前10条 order by id desc limit 0,10 按照id的倒序排序 取出前10条 换句话说,Limit n 等价于 Limit

MYSQL中有关表的简单操作

#创建表 CREATE TABLE table02( tid INT, tname VARCHAR(20)); #查看所有表SHOW TABLES; #查看表的结构DESC table01; #修改表名RENAME TABLE table02 TO table002; #删除表DROP TABLE table002; 原文地址:https://www.cnblogs.com/YLTzxzy/p/10997014.html

浅析MySQL中exists与in的使用

exists对外表用loop逐条查询,每次查询都会查看exists的条件语句,当 exists里的条件语句能够返回记录行时(无论记录行是的多少,只要能返回),条件就为真,返回当前loop到的这条记录,反之如果exists里的条 件语句不能返回记录行,则当前loop到的这条记录被丢弃,exists的条件就像一个bool条件,当能返回结果集则为true,不能返回结果集则为 false 如下: select * from user where exists (select 1); 对user表的记录逐

MySQL主从同步的简单理解

MySQL主从同步的简单理解 许多大型网站为了减轻海量用户对于服务器并发访问量的性能问题,会使用很多解决的方案, 数据库主从分离,就是目前主流的一种解决手段. 想一下每个用户都通过控制层业务层调用服务器数据,用户量小还好说, 用户量大的话轻则用户体验极差,重则数据库崩溃甚至数据丢失,那真的就是很严重的事情了. 如何解决,解决方案之一就是主从分离. 主从那长话短说就是,一台服务器我处理不了就用几台服务器咯, 但是这些服务器是有主次之分以及职责划分的. * 将我们对数据库的读写操作分别放到不同的服务

MySQL 中 EXISTS 的用法

在MySQL中 EXISTS 和 IN 的用法有什么关系和区别呢? 假定数据库中有两个表 分别为 表 a 和表 b create table a ( a_id int, a_name varchar(20) ) create table b ( b_id int, b_name varchar(20) ) 那么 select * from a where a_name in (select b_name from b) 这条SQL语句的意义很明显是选取满足where条件下 a 中的所有列的数据