一个例子找回SQL查询语句的感觉
来源:互联网 发布:百度贴吧数据加载失败 编辑:程序博客网 时间:2024/06/11 18:48
因为已经有过一定的SQL语言基础,基本的增删查改都会,但是最近的工作涉及到一个SQL的视图的内容。因此有想法开始记录一下自己的能力。
使用的数据库为:Postgresql
查看数据库的工具为:Navicat for postgresql
于是视图的定义为:
SELECT record.id,record.record,
form."time",
dic.name AS intent,
form.enrollmentid
FROM (((apply_form_record record
LEFT JOIN apply_form form ON (((form.id)::text = (record.applyformid)::text)))
LEFT JOIN enrollment enroll ON (((enroll.id)::text = (form.enrollmentid)::text)))
LEFT JOIN sys_data_dictionary dic ON (((dic.id)::text = (enroll.intentid)::text)))
UNION ALL
SELECT cl.id,
cl.record,
cl.hittime AS "time",
dic.name AS intent,
cl.enrollid AS enrollmentid
FROM ((clicks cl
LEFT JOIN enrollment enroll ON (((enroll.id)::text = (cl.enrollid)::text)))
LEFT JOIN sys_data_dictionary dic ON (((dic.id)::text = (enroll.intentid)::text)));
这是个视图。
已经几乎忘记SQL视图是什么鬼了,于是百度一下。
得知,其实也就是一个虚拟表。
有几个不太懂的地方
1.dic.name AS intent
其实就是在查询的时候把dic.name叫做intent,仅此而已。
2.LEFT JOIN
LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。
3.UNION ALL
请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。
0 0
- 一个例子找回SQL查询语句的感觉
- sql语句查询的例子
- 常用的sql语句查询例子
- 常用的sql语句查询例子
- 数据库查询的例子及SQL语句
- SQL 语句的子查询例子
- 一个case查询语句的使用例子
- 一个SQL插入语句的例子
- 找回曾经的感觉
- Oracle SQL语句查询例子
- 一个SQL查询语句
- 一个sql查询语句
- 一个查询每天时间段的SQL 语句
- 关于sql查询语句 的一个问题
- 一个字段匹配查询的SQL语句
- 一个多表查询的SQL语句
- 一个值得纪念的SQL查询语句
- 从一个MysqL的例子来学习查询语句
- 开发笔记004
- R语言高级算法之人工神经网络(Artificial Neural Network)
- 三维坐标系的旋转矩阵
- Vue框架Element的事件传递broadcast和dispatch方法分析
- 使用路径API获取获取内部存储目录的路径
- 一个例子找回SQL查询语句的感觉
- 训练9-使用CSS选择器定义标签
- Bean的生命周期
- 蓝桥杯——计算机研究生机试真题(2017.2.15)
- linux网站部署-centos7安装jdk和tomcat网站部署
- 使用commons-lang.jar包以及反射机制实现javabean的equals,hashCode和toString三个方法重写
- 行列互换
- Linux环境下如何配置IP地址、MAC地址
- linux下安装python环境