利用 并运算 union / union all 纵向合并数据表
2016-03-10 17:05
232 查看
并运算,则是将两次查询结果给并起来,大致语法结构:
select xxx union select xxx
union:输出结果时去除重复项(当数据量很大时使用union去重的排序开销很大)
union all:将两个集合的并集全部输出
例如:
我有两张表:
表1:shuoshuo_info
表2:rizhi_info
我们可以通过union all 的方法将这位用户发布过的内容做一个汇总,创建好一个视图,当我们要集中输出时,只要查找视图就好
一般在0-2005 用varchar,在8000以下用varchar(max),超过用 text类型
在增加记录的同时添加当前时间:
1.数据类型可以选择varchar 然后写入的时候用now(),要写明时间字段,并赋值now()
2.数据类型选择timestemp,加上默认值CURRENT_TIMESTAMP,不用给时间字段赋值,在数据库系统自动填上时间
select xxx union select xxx
union:输出结果时去除重复项(当数据量很大时使用union去重的排序开销很大)
union all:将两个集合的并集全部输出
例如:
我有两张表:
shuoshuo_ID | shuoshuo_user | shuoshuo_content | shuoshuo_time |
---|---|---|---|
1 | aaa | 啦啦啦 | 2015-06-20 |
2 | bbb | 哈哈哈 | 2015-11-20 |
3 | ccc | 嘿嘿嘿 | 2016-05-20 |
rizhi_ID | rizhi_user | rizhi_title | rizhi_content | rizhi_time |
---|---|---|---|---|
1 | aaa | lalala | 啦啦啦 | 2015-06-20 |
2 | bbb | hahaha | 哈哈哈 | 2015-11-20 |
3 | ccc | heiheihei | 嘿嘿嘿 | 2016-05-20 |
我们可以通过union all 的方法将这位用户发布过的内容做一个汇总,创建好一个视图,当我们要集中输出时,只要查找视图就好
select `shuoshuo_user` AS `user`,`shuoshuo_content` AS `content`, `shuoshuo_time` AS `time` from `shuoshuoinfo` union all select `rizhi_user`,`rizhi_content` ,`rizhi_time` from `rizhiinfo`
我们要注意的是,在使用union时,前后两张表选择的字段数、每个字段的类型应该相同,最终生成表的字段名会以第一张表为准,所以我们用 as 给字段取一个别名,方便区分
补充点:
用text还是varchar:一般在0-2005 用varchar,在8000以下用varchar(max),超过用 text类型
在增加记录的同时添加当前时间:
1.数据类型可以选择varchar 然后写入的时候用now(),要写明时间字段,并赋值now()
2.数据类型选择timestemp,加上默认值CURRENT_TIMESTAMP,不用给时间字段赋值,在数据库系统自动填上时间
相关文章推荐
- Spring MVC学习笔记02
- C# winform传值
- std_vector使用注意事项
- Bootstrap navbar 背景颜色、背景图和字体颜色修改 ArcGIS Web 开发学习(四)
- PHP 魔术变量和魔术函数
- oracle 小项目实战总结
- 用友UAP/NC,今天做表体的编辑后事件
- 关于hstack和Svstack
- 让超出DIV宽度范围的文字自动显示省略号...
- 常见哈希冲突解决
- iPhone开发笔记 (5) scrollView和pageControl的搭配使用
- 工资类的编写(其中工资数据的输入从文件中输入)
- 默认参数的函数
- 高效网页截图编辑插件(Web page screenshot editor)
- [optimization]Dogleg Method狗腿算法
- Python讀寫Excel文件的實例
- 获取scrollview当前滚动到某页的代码,已经滚动中计算的代码
- 华为手机不能打印Log日志问题
- 嵌入式linux:音频编解码PCM转至AAC
- 观察者模式