T-SQL:毕业生出门需知系列(二)
第2课 检索数据
2.1 SELECT 语句
用途:从一个或多个表中检索数据信息
关键字:作为SQL组成部分的保留字。关键字不能用作表或列的名字。
为了使用SELECT检索表数据,必须至少给出两条信息:
想选择什么,
从什么地方选择。
2.2 检索单个列
SELECT prod_name
FROM Products;
-- 分析:利用 SELECT 语句从 Products 表中检索一个名为 prod_name 的列。
-- 所需的列名写在 SELECT 关键字之后,FROM 关键字指出从哪个表中检索数据.
【提示】使用“;”和将语句拆分成多行可增强可读性
【提示】SQL 语句不区分大小写,即“SELECT”和“select”一样;但是表名、列名和值可能有所不同。
2.3 检索多个列
从一个表中检索多个列,仍然使用相同的 SELECT 语句。唯一的不同是必须在 SELECT 关键字后给出多个列名,列名之间用逗号隔开
SELECT prod_id, prod_name, prod_price
FROM Products;
-- 分析:使用 SELECT 语句从表 Products 中选择 3 列数据
2.4 检索所有列(*)
除了指定所需的列外,SELECT 语句还可以检索所有的列而不必逐个列出它们。在实际列名的位置使用星号(*)通配符可以做到
SELECT *
FROM Products
-- 分析:如果给定一个通配符(*),则返回表中所有的列。列的顺序一般是列在表定义中出现的物理顺序。
【注意】除非确实需要表中的每一列,否则最好别使用 * 通配符。检索不需要的列通常会降低检索和应用程序的性能。
2.5 检索不同的值(DISTINCT)
SELECT 语句返回所有匹配的行,但是我们并不希望每个值每次都出现,这该怎么办?
假如,你想检索 products 表中所有产品供应商的 id
SELECT vend_id
FROM Products
发现存在重复值,怎么解决呢?方法就是使用 DISTINCT 关键字
SELECT DISTINCT vend_id
FROM Products
-- 分析:SELECT DISTINCT vend_id 告诉 DBMS 只返回(具有唯一性)的 vend_id 行。如果使用 DISTINCT 关键字,必须直接放在列名前面。
【注意】DISTINCT 关键字作用于所有列,除非指定两列完全相同,否则所有的行都会被检索出来
2.6 限制返回的行数(TOP)
SELECT 语句返回指定表中所有匹配的行。如果我们只想返回第一行或者一定数量的行,该怎么办呢?
-- 使用 TOP 关键字
SELECT TOP 5 prod_name
FROM Products
-- 分析:使用 SELECT TOP 5 语句,只检索前 5 行数据
2.7 使用注释(-- 和 /* */)
行内注释:使用“--”
SELECT * --行内注释
FROM Products;
多行注释:使用“/* */”
/*
多行注释
SELECT *
FROM Products;
*/
续集:
SQLServer:《SQL必知必会》一书的读书笔记(目录)
T-SQL:毕业生出门需知系列(二)的更多相关文章
- T-SQL:毕业生出门需知系列(目录)
一.前言: 作为一个应届毕业生又要准备面试 ASP.NET 攻城狮了,以前在图书馆觉得这本书讲得挺基础,这次回家就自己买了本用来复习,顺便做下读书笔记. 第4版 二.代码下载: 官方:http://f ...
- T-SQL:毕业生出门需知系列(六)
第6课 用通配符进行过滤 6.1 LIKE 操作符 前面介绍的所有操作符都是针对已知值进行过滤.但是,这种过滤方法并不是任何时候都好用. 例如:怎样搜索产品名中包含文本 bean bag 的所有产品? ...
- T-SQL:毕业生出门需知系列(四)
第4课 过滤数据 4.1 使用 WHERE 子句:过滤 只检索所需数据需要指定搜索条件(即过滤条件). WHERE 子句在表名(FROM 子句)后给出,根据 WHERE 子句中指定的条件过滤. SEL ...
- T-SQL:毕业生出门需知系列(三)
第3课 排序检索数据 3.1 排序数据(ORDER BY) 下面的 SQL 语句返回某个数据库表的单个列.观察其输出,并没有特定的顺序. SELECT prod_name FROM Products; ...
- T-SQL:毕业生出门需知系列(九)
<SQL 必知必会>读书笔记 -- 第9课 汇总数据 9.1 聚集函数:对某些行运行的函数,计算并返回一个值 案例: -- 确定表中函数 -- 获得表中某些行的和 -- 找出表列的最大值. ...
- T-SQL:毕业生出门需知系列(八)
第8课 使用函数处理数据 8.1 函数 [名词]可移植:所编写的代码可以在多个系统上运行 8.2 使用函数 8.2.1 文本处理函数 例1:使用 UPPER() 函数--将文本转换为大写 SELECT ...
- T-SQL:毕业生出门需知系列(七)
第7课 创建计算字段 7.1 计算字段(格式化字段) 存储在数据库表中的数据一般不是应用程序所需要的格式,如: 1.需要显示公司名,同时还需要显示公司的地址,但这两个信息存储在不同的表列中. 2.列数 ...
- T-SQL:毕业生出门需知系列(五)
第5课 高级数据过滤 5.1 组合 WHERE 子句 第4课介绍的 WHERE 子句在过滤数据时都是用单一的条件. 5.1.1 AND 操作符 检索由供应商 DLL01 制造且价格小于等于 4 美元的 ...
- SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础
原文:SQL Server 2008空间数据应用系列二:空间索引(Spatial Index)基础 在前一篇博文中我们学习到了一些关于地理信息的基础知识,也学习了空间参照系统,既地球椭球体.基准.本初 ...
随机推荐
- oracle连接问题【转载】
SQL的四种连接-左外连接.右外连接.内连接.全连接 今天在看一个遗留系统的数据表的时候发现平时查找的视图是FULL OUT JOIN的,导致平时的数据记录要进行一些限制性处理,其实也可以设置视图 ...
- 猥琐的wordpress后门分享
https://www.t00ls.net/thread-37312-1-1.html 一个可以自动调用管理员帐号登录wordpress后台的方法. <?php require('../../. ...
- Android之Json的学习
json数据包含json对象,json数组,对象是{ },数组是[ ], 数组里面还可以包含json对象,json对象之间是用逗号(,)隔开 形式如下: { "languages" ...
- ThinkPHP5 与 ThinkPHP3.* 之间的使用差异
因为研究TP5时间不是很长,暂时先列以下几处差异: 1.过去的单字母函数已完全被替换掉,如下: S=>cache,C=>config,M/D=>model,U=>url,I=& ...
- maven报错非法字符:\65279 错误
开发中一个项目很早就报这个错,maven报错非法字符:\65279 错误,今天终于忍无可忍要解决它 :编译java文件的时候,有些java文件报非法字符 \65279错误,在网上找和很多 方法,也试了 ...
- dos清除缓存
ipconfig /flushdns ,DNS缓存就被清除了. ipconfig /displaydns查看DNS缓存
- 《微软互联网信息服务(IIS) 最佳实践》已上市,欢迎选购!
本书内容涵盖了IIS6.0~IIS 10.0 的全部主流IIS 版本,是多年微软技术支持经验的结晶.祝您顺利排除Web 服务器的疑难杂症! 本书由微软亚太区全球技术支持中心IIS 方面的顶尖专家金鑫作 ...
- Asp.Net Core 发布和部署( MacOS + Linux + Nginx )
前言 在上篇文章中,主要介绍了 Dotnet Core Run 命令,这篇文章主要是讲解如何在Linux中,对 Asp.Net Core 的程序进行发布和部署. 有关如何在 Jexus 中进行部署,请 ...
- IT人生知识分享:概率与运气
前言: 最近的人生多了些体验,也读了些许书,感觉还是有些知识是可以分享的. 今天难得周六,特意开电脑了,花几个小时写写,和大伙分享分享点知识. 以下内容,更多的需要读者思考,所以结论不会写太清晰,但一 ...
- Python黑帽编程2.5 函数
Python黑帽编程2.5 函数 写了几节的基础知识,真心感觉有点力不从心.这块的内容说实话,看文档是最好的方式,本人的写作水平,真的是找不出更好的写法,头疼.简单带过和没写一样,写详细了和本系列教程 ...