mysql-查询一个表用户对新增用户进行统计不能用not in 需要用exists

问题描述

查询一个表用户对新增用户进行统计不能用not in 需要用exists

下面是用not in 实现的 ,需要修改为 exists实现
SELECT COUNT(*) from order_info_ref as oif where oif.order_time>='2016-03-02 00:01:00' and oif.order_time<='2016-03-02 23:59:59' and oif.ca_user_id NOT in
(SELECT oi.ca_user_id from order_info_ref as oi where oi.order_time>='2016-03-01 00:01:00' and oi.order_time<='2016-03-01 23:59:59');

解决方案

其实两种写法都是可以得,看你的需求了。

解决方案二:

sql not exists取代 in
oracle not in and EXISTS
SQL 范围查询问题遇见与扩展学习 IN; NOT IN; NOT EXISTS;BETWEEN AND

时间: 2024-08-18 07:28:54

mysql-查询一个表用户对新增用户进行统计不能用not in 需要用exists的相关文章

简单有用的SQL脚本 (行列互转,查询一个表内相同纪录等)_mssql2005

行列互转 复制代码 代码如下: create table test(id int,name varchar(20),quarter int,profile int) insert into test values(1,'a',1,1000) insert into test values(1,'a',2,2000) insert into test values(1,'a',3,4000) insert into test values(1,'a',4,5000) insert into tes

Oracle查询一个表中的几万条数据,不用or,优化的方法还有什么呢

问题描述 Oracle查询一个表中的几万条数据,不用or,优化的方法还有什么呢 如:name numbers a 22 b 33 c 44 d 55 . . . 查询a.b.d的详细信息,不用or in之类的 解决方案 用 EXISTS ........

mysql 查询 数据库.表名 失败

问题描述 mysql 查询 数据库.表名 失败 不知道有没有人遇到过,在navicat for mysql里面,查询本数据库的时候时用 from 数据库名.表名 出现错误 数据名,表名都没有写错 解决方案 select写错了 解决方案二: 多了个 c 那么明显 解决方案三: 在你的表名前后加上点(数字键1左边的那个符号) 解决方案四: http://solodu.iteye.com/blog/520419 解决方案五: select * from [数据库名].dbo.表名 解决方案六: sel

mysql把一个表某个字段的内容复制到另一张表的某个字段的SQL语句写法

 有时候,我们需要复制某个字段一整列的数据到另外一个新的字段中,或是需要把某个表的某个字段的值跨表复制到另一个表中的某个字段,本文就罗列了一些SQL语句写法,需要的朋友可以参考下   需求:把一个表某个字段内容复制到另一张表的某个字段.   实现sql语句1:     代码如下: UPDATE file_manager_folder f1 LEFT OUTER JOIN file_manager_folder f2      ON f1.name = f2.name AND f2.parentI

如何使用MySQL查询某个列中相同值的数量统计_Mysql

数据现在是这样的,我想确定出type列中的news和image....甚至以后有其他值,他们分别有多少个. SELECT type, count(1) AS counts FROM material GROUP BY type count(1),代表统计第一列,写上1 比写 *的效率高! 以上所述就是本文的全部内容了,希望大家能够喜欢. 以上是小编为您精心准备的的内容,在的博客.问答.公众号.人物.课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索mysql , 统计数量 查询数量 m

搜索-如何从数据库一个表链接到另一个表

问题描述 如何从数据库一个表链接到另一个表 5C 自己弄了一个搜索,一个表包含所有的用户名称,每一个用户各占一个表,如何才能链接到那个用户的表,输出他的信息呢?求给一个思路,谢谢各位. 解决方案 一张用户表跟一张用户信息表就可以了,把用户表的id作为用户信息表的外键,然后通过用户表的id去用户信息表关联出用户信息 解决方案二: 将一个数据库中的表复制到另一个数据库MySQL 数据库怎样把一个表的数据插入到另一个表MySQL 数据库怎样把一个表的数据插入到另一个表 解决方案三: 你说的什么意思,不

mysql查询语句问题-mysql查询语句求助 关于IF ELSE

问题描述 mysql查询语句求助 关于IF ELSE 写一个sql语句查询一个表,当这个sql语句查询没有查询到结果(这个表中没有数据)则执行另外一个sql语句查询另外一个表. 两个表中的数据是相克的,例如:一个表中有了一条外键id为1的数据,则另外一张表中不能有外键id为1的数据.两个表的外键指向了另外一张表的id. 希望高手能解答下!!!!! 万分感谢!!!!!!! 解决方案 这个直接用sql语句好像还不好控制 最好是在java代码里面进行控制 解决方案二: mysql的语法不太懂,我写的是

mysql 查询固定时间段问题

问题描述 mysql 查询固定时间段问题 查询一个表中这一周的时间,这一天的时间,这一个月的时间的数据 解决方案 mysql按时间段查询MySql查询时间段django 查询时间段

mysql查询-怎么判断一个用户在多个表中是否有值

问题描述 mysql查询-怎么判断一个用户在多个表中是否有值 场景如下,有一张用户表user,主键用户编号user_id ,类型int; 三张业务表 a_record,b_record,c_record,分别都含有外键user_id. 在方法中,别人传给我一串user_id ,字符串的,逗号分割的,如"10012001200398":我需要去数据库中判断这些user_id串中的用户是否有三种业务中至少一条的记录,(只要这个user_id字符串中的有一个人有其中之一业务记录,我就可以返回