sql查询点滴记录
发布时间:2024-01-14 14:30:19
也不一定,以前从来没有深入的研究过sql查询,最近买了一本T-SQL查询的书,把以前忽视的问题都记录一下
以前一直模模糊糊的把sqlserver作为关系数据库,里面就是以表的方式进行数据的关系化话管理,后来有些SQL语句看着怪怪的,也没怎么管
其实
“写好sql,需要的是一种面向声明和集合的思维方式,而不是面向过程的(集合是重点)”(PS:数据库里面的表就是一个集合,集合是无序的!)
以前没太注意过sql语句执行时的逻辑顺序,在研究linq时,linq强调了sql语句的执行顺序,在看书时也留意了一下
(5) select (5-2) distinct (5-3) top (<top_specification>) (5-1) <select_list>
(1) from (1-j) <left_table> <join_type> join <right_table> on <on_predicate>
|(1-a) <left_table> <apply_type> apply <right_table_expression> as <alias>
|(1-p) <left_table> pivot (<pivot_specification>) as <alias>
|(1-u) <left_table> unpivot (<unpivot_specification>) as <alias>
(2) where <where_predicate>
(3) group by <group_by_specification>
(4) having <having_predicate>
(6) order by <order_by_list>
可以看到
第一个阶段是from :标识出查询的来源,处理表(集合)运算符
第二个阶段是where根据谓词(查询条件)进行刷选
第三个阶段是gruop by 根据指定的列表名进行分组
第四个阶段是having 根据having中出现的谓词进行刷选
第五个阶段是select
第六各阶段是order by根据指定列进行排序


猜你喜欢
- 代码如下:---这是一个人事系统中的示例,要求记录一下员工的缺勤情况 ---1.要在表中记录一下缺勤计分,是对经常缺勤者的一种处
- 简介testing是 Go 语言标准库自带的测试库。在 Go 语言中编写测试很简单,只需要遵循 Go 测试的几个约定,与编写正常的 Go 代
- MYSQL常用命令1.导出整个数据库mysqldump -u 用户名 -p --default-character-set=latin1 数
- 海量数据(百万以上),其中有些全部字段都相同,有些部分字段相同,怎样高效去除重复?如果要删除手机(mobilePhone),电话(offic
- 计数排序找到给定序列的最小值与最大值创建一个长度为最大值-最小值+1的数组,初始化都为0然后遍历原序列,并为数组中索引为当前值-最小值的值+
- Transact-SQL(又称T-SQL),是在Microsoft SQL Server和Sybase SQL
- 本文主要讲解Go语言中的函数式编程概念和使用,分享给大家,具体如下:主要知识点:Go语言对函数式编程的支持主要体现在闭包上面闭包就是能够读取
- 本文实例为大家分享了Python tkinter实现计算器功能的具体代码,供大家参考,具体内容如下python版本:3.5一.计算器的功能描
- 用pandas中的DataFrame时选取行或列:import numpy as npimport pandas as pdfrom pan
- 任何使用yield的函数都称之为生成器,如:def count(n): while n > 0: &nb
- pandas 的日期/时间类型有如下几种:ConceptScalar ClassArray Classpandas Data TypePri
- 当模型models.py中发生改变时,即在models.py文件操作数据表,使得数据库中的表结构发生变化,需要使用命令,记录这些操作,类似于
- 本文实例讲述了JavaScript设计模式之模板方法模式原理与用法。分享给大家供大家参考,具体如下:一、模板方法模式:一种只需使用继承就可以
- 本文实例讲述了python获取mp3文件信息的方法。分享给大家供大家参考。具体如下:将代码生成.py文件放在目录下运行,可以获取该目录的所有
- 三种遍历列表里面序号和值的方法:最近学习python这门语言,感觉到其对自己的工作效率有很大的提升,特在情人节这一天写下了这篇博客,下面废话
- 这系列文章将介绍一下Oracle的基础知识,将会使用docker下运行的oracle11g的精简版进行说明。这篇文章介绍一下oracle的版
- 这篇文章主要介绍了Python tkinter三种布局实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,
- 前提条件:本地已经安装好oracle单实例,能使用plsql developer连接,或者能使用TNS连接串远程连接到oracle集群读取e
- 1、队列队列是一种遵循先进先出(FIFO)原则的数据结构。可以使用数组实现队列的基本操作。当进行入队操作的时候,即在队列尾部插入一个元素,由
- 一. vue-amap,一个基于 Vue 2.x 和高德地图的地图组件 https://elemefe.github.io/vue-amap