1> 查询数据表除了前三条以外的数据。

起初我想到的是这条语句

SELECT * FROM admin WHERE userid NOT IN (SELECT userid FROM admin ORDER BY userid LIMIT 3) ORDER BY userid DESC

但是运行的时候会报 This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery

这个的意思是表示子查询的时候不支持limit ,还有一点我就是很二了 就是查询的时候用not in 效率非常不高

最后的解决办法是

CREATE VIEW view_top3_admin AS SELECT * FROM admin ORDER BY userid LIMIT 3;

先创建一个视图 将子查询条件放到视图里面

然后在用这条语句

SELECT * FROM admin a WHERE NOT EXISTS (SELECT 1 FROM view_top3_admin b WHERE b.userid=a.userid ) ORDER BY a.userid DESC

先来解释下这条语句  SELECT 1 FROM view_top3_admin b WHERE b.userid=a.userid表示查询表里面的值 只要有数据都显示为 1,1表示不读取数据

这样的话就是提升了查询的性能,当然也可以把里面的1  换成 null 性能是一致的。整条语句的意思是查询admin表值, 判断条件是值不在子查询表里的。

2 > union 和 union all 的使用

先来解释下这两个关键字在mysql数据库中提供了UNION和UNION ALL关键字,这两个关键字都是将结果集合并为一个,但这两者从使用和效率上来说都有所不同

UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果。

select * from table union select * from tabl

UNION ALL只是简单的将两个结果合并后就返回 如果返回的两个结果集中有重复的数据,那么返回的结果集就会包含重复的数据了

select * from table union all select * from tabl

从效率上说,UNION ALL 要比UNION快很多,所以,如果可以确认合并的两个结果集中不包含重复的数据的话,那么就使用UNION

这两个关键字用做报表比较多

本文标题: 基于mysql查询语句的使用详解

本文地址: http://www.cppcns.com/shujuku/mysql/94972.html

mysql查询语句详解_基于mysql查询语句的使用详解相关推荐

  1. mysql中的exists嵌套_基于mysql 的exists 嵌套查询的详解

    select Sname from Student where not exists (select * from Course where not exists (select * from SC ...

  2. mysql数据库约束详解_基于MySQL数据库的数据约束实例及五种完整性约束介绍

    为了防止不符合规范的数据进入数据库,在用户对数据进行插入.修改.删除等操作时,DBMS自动按照一定的约束条件对数据进行监测,使不符合规范的数据不能进入数据库,以确保数据库中存储的数据正确.有效.相容. ...

  3. mysql中时间处理函数_基于mysql时间处理函数的应用详解

    DAYOFWEEK(date) 返回日期date的星期索引(1=星期天,2=星期一, --7=星期六).这些索引值对应于ODBC标准. mysql> select DAYOFWEEK('1998 ...

  4. keepalived mysql双主架构图_基于MySQL双主的高可用解决方案理论及实践

    MySQL在互联网应用中已经遍地开花,但是在银行系统中,还在生根发芽的阶段.本文记录的是根据某生产系统实际需求,对数据库高可用方案从需求.各高可用技术特点对比.实施.测试等过程进行整理,完善Mysql ...

  5. mysql 2个排序规则_基于mysql 默认排序规则的坑

    mysql默认varchar类型是对大小写不敏感(不区分),如果想要mysql区分大小写需要设置排序规则: utf8_bin将字符串中的每一个字符用二进制数据存储,区分大小写. utf8_genera ...

  6. mysql自然连接的例题详解_基于 MySQL 的数据库实践(自然连接)

    在基本查询一节的示例中,我们有从 instructor 和 teaches 表组合信息,匹配条件是 instructor.ID 等于 teaches.ID 的查询,ID 属性是两个表中具有相同名称的所 ...

  7. SpringAOP描述及实现_AspectJ详解_基于注解的AOP实现_SpringJdbcTemplate详解

    AOP AOP特点: 面向切面编程, 利用AOP对业务逻辑的各个部分进行抽取公共代码, 降低耦合度, 提高代码重用性, 同时提高开发效率. 采取横向抽取, 取代传统纵向继承体系重复性代码 解决事务管理 ...

  8. 怎样查看电脑系统版本_用什么软件查维修记录 思域HATCHBACK怎样查询维保记录_汽车事故车查询...

    请点击上方快速关注 思域HATCHBACK很火.这款被誉为"国产Type R"的思域HATCHBACK版本在三厢车的基础上,集成了更运动化乃至更具战斗感的套件包围.中置排气和手动变 ...

  9. mysql profiling详解_使用mysql profiling功能剖析单条查询

    5.1版本开始引入show profile剖析单条语句功能,支持show profiles和show profile语句,参数have_profiling;控制是否开启: 查看是否支持这个功能(查询为 ...

最新文章

  1. 马斯克如何颠覆航天? 1/5385成本,c++和python编程!
  2. json vue 对象转数组_vue 基础入门(一)修改
  3. 基于OpenCV的数字识别系统
  4. Linux内核高端内存
  5. linux shell脚本学习xargs命令使用详解
  6. 热乎着,昨晚阿里这题真太绝了
  7. 基于VSM的命名实体识别、歧义消解和指代消解
  8. PHP 电子商城基本数据表
  9. 如果Java快死了,那么它肯定看起来非常健康
  10. leetcode38. 外观数列
  11. python脚本 远程连接后 输出 日志 或换行输出
  12. 安徽掀起新一轮大规模清房行动 官员急抛房产
  13. WiFi 中继/桥接功能 — 基于OpenWRT路由器
  14. matlab车辆识别车辆检测项目系统源码16例
  15. 不属于计算机主机设备的是什么,不属于计算机硬件的是什么
  16. 25 行 Python 代码实现人脸检测——OpenCV 技术教程
  17. mongo-节点出现recovering状态的处理办法
  18. 线性表 :: 顺序存储结构的实现
  19. Azureus源码剖析(二) ---解析Torrent种子文件
  20. 缺陷的严重程度(Severity)

热门文章

  1. Halcon例程详解(基于卡尺工具的匹配测量方法) —— measure_stamping_part.hdev
  2. python为什么忽然火了_为什么Python突然就火了起来了呢?
  3. linux脚本转换exe,Ps1 To Exe(powershell脚本转换EXE工具) V3.0.6 官方版
  4. server sql 将出生日期转为年龄_在sql server表中有一个出生日期字段我怎么才能在当前年份改变时自动更新年龄字段...
  5. python怎么用lambda和map函数_Python之lambda匿名函数及map和filter的用法
  6. ajax中datatype是json,dataType:'json'vs data:$ .ajax中的JSON.stringify(obj)
  7. ubuntu16.04 安装 ipython
  8. 隐藏GridControl的“Drag a column header here to group by that column”
  9. angualarjsdemo
  10. SWOT分析是神马?