MySQL
来源:互联网 发布:qq音乐 mac 版权破解 编辑:程序博客网 时间:2024/06/03 22:06
联合查询:将多次查询(多条select语句),在记录上进行拼接(一般记录数增加,但是字段数不会增加)
这里需要注意的是,多条select 语句字段数必须一致,字段类型可以不同!
语法格式:
select 1..union[union 选项]select 2..
union选项:与select选项一样,有两个
All : 保留所有记录;
Distinct : 去重;默认值
对记录去重:
select id ,age from p_user UNION [DISTINCT]SELECT id,age from p_user_2;
保留所有记录:
select id ,age from p_user UNION ALLSELECT id,age from p_user_2;
字段类型可以不一致
select id ,age from p_user UNION ALLSELECT name,age from p_user_2;
查询结果字段名只保留第一张表的字段。
【联合查询的意义】
联合查询的意义分两种:
1.查询同一张表但是需求不同;
如查询学生信息,男生身高升序,女生身高降序。
2.多表查询:
多张表的结构是完全一样的,保存的数据结构也是一样的;
多表结构不同,但是拥有相同的所需字段。
【联合查询中的order by】
如查询学生信息,男生身高升序,女生身高降序。
联合查询中,order by 不能直接使用,需要对查询语句使用括号才行;
- 若要order by生效,还必须使用limit搭配,可以直接limit 最大数。
(SELECT * from p_user where sex='femal' ORDER BY age DESC LIMIT 100)UNION all(select * from p_user where sex='male' ORDER BY age asc LIMIT 100 )
【Tips】
当数据量过大时,需要常常会进行分表。分表有两种方式:水平分表和垂直分表。
① 水平分表
表结构相同;如将1亿条数据分到10张结构相同表。
② 垂直分表
表结构不同,综合起来是一个完整的个体。
阅读全文
0 0
- Mysql
- MySql
- MYSQL
- MySQL
- mysql
- mysql
- mysql
- mysql
- Mysql
- Mysql
- mysql
- MySQL
- mysql
- Mysql
- mysql
- mysql
- mysql
- mySQL
- Html5开发工具安装及使用
- Requests库使用详解
- GOLANG随机数生成方法
- 关于gridview失去焦点
- 魔术师发牌问题的java实现
- MySQL
- 对比线程安全和可重入函数
- Btrace入门到熟练小工完全指南
- nsq源码分析(2):nsqlookup之http服务
- androidStudio中build.gradle配置文件详解
- Javah生成JNI头文件极简跳坑
- Redis List数据类型
- load-on-startup
- 使用Navicat为Mysql数据库新建用户