博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SQLite中SELECT基本形式
阅读量:6227 次
发布时间:2019-06-21

本文共 1430 字,大约阅读时间需要 4 分钟。

SQLite中SELECT基本形式
每个数据库通常都包含多个表,而每个表又包含多条数据。要获取数据库中的数据,就需要SQL语言提供的查询语句SELECT。本章将讲解和SELECT语句相关的内容,其中包括SELECT基本形式、表达式、连接、分组、排序和去重、获取子集、子查询以及联合查询等。
3.1  SELECT基本形式
本节将讲解SELECT语句的基本形式,其中包括基本完整形式、SELECT子句、FROM子句以及WHERE子句等
3.1.1  基本形式
以下是SELECT语法的基本完整形式:
SELECT [DISTINCT] select_heading
FROM source_tables
WHERE filter_expression
GROUP BY grouping_expressions
HAVING filter_expression
ORDER BY ordering_expressions
LIMIT count
OFFSET count
其中,参数说明如下:
select_heading:用来定义最终结果表的格式和内容,主要是用来定义表的头。
注意:在SQL中的数据结构就是表,表用于存储数据和数据处理。表是由一个头和体组成。头定义了每列的名称和类型(以SQLite为单位)。列名称在表格中必须是唯一的。头定义了列的顺序,这些列作为表定义的一部分被修复。体包含了所有行。每一行由每列的一个数据元素组成。表中的每一列的所有行必须具有相同数量的数据元素,每个元素可以容纳一个数据值(或一个NULL)。
  • FROM source_tables:指定一个或多个源表,并将它们组合成一个大的工作表。
  • WHERE filter_expression:对工作表中的特定行过滤。
  • GROUP BY grouping_expressions:用来指定分组。
  • HAVING filter_expression:过滤分组表中的特定行。
  • ORDER BY ordering_expressions:对结果集的行进行排序。
  • LIMIT count:将结果集输出限制为特定数量的行。
  • OFFSET count:跳过结果集开头的行。
注意:DISTINCT是可选的,用来消除重复的行。除了DISTINCT外,在SELECT语句中,附加子句(FROM、WHERE、GROUP BY等)都是可选的。
SELECT语句中的子句并不是按照它们写入的顺序进行执行的。其执行流程如图3.1所示。
 
图3.1  执行流程
注意:在图3.1中R后面的数字可以认为是执行顺序。
(1)查询语句需要一个或者两个源表。
(2)通过FROM子句,获取一个R1表。
(3)WHERE子句对R1表中的行进行过滤,然后生成一个新的表R2。
(4)R2表通过GROUP BY子句然后进行分组,将R2表分组了对应的组,此时会出生成R3表。
(5)R3表再通过HAVING子句过滤表中特定行,生成R4表。
(6)R4表再通过SELECT子句执行要显示的最终结果表的格式和内容,此时会生成R5表。
(7)R5表再使用DISTINCT关键字进行去重,此时会生成R6表。
(8)R6会通过ORDER BY子句进行排序,此时会生成R7表。
(9)R7表通过OFFSET子句跳过表的开头的行,生成一个新的表R8表。
(10)R8表通过LIMIT子句限制为特定数量的行,此时会出显示出最终的结果表Result。

 

转载地址:http://fjnna.baihongyu.com/

你可能感兴趣的文章
Git命令行大全
查看>>
Node.js 4493图片批量下载爬虫1.00
查看>>
其实人缺乏对数据的真实分析能力,只知道数据展现和推演
查看>>
连接H3C交换机的Console口连不上
查看>>
Redis 简介
查看>>
JSt中对象的prototype属性
查看>>
iPhone应用程序 将图片保存到相册实例
查看>>
给DropDownList添加ToolTip(title)属性
查看>>
IOS新特性详情
查看>>
redis性能测试
查看>>
浅谈mysql的两阶段提交协议
查看>>
《影响力》 一个活生生的例子(转载)
查看>>
程序员有趣的面试智力题(转)
查看>>
分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控
查看>>
phpstorm中完成一键快速注释函数头
查看>>
VMware公司SpringSource部门宣布收购Gemstone Systems公司
查看>>
Linux Start Restart and Stop The Cron or Crond Service
查看>>
2014第12周四开发记
查看>>
[转]Spring MVC之@RequestMapping 详解
查看>>
HttpComponents入门解析
查看>>