码迷,mamicode.com
首页 > 数据库 > 详细

SQLServer:《SQL必知必会》一书的读书笔记(二)

时间:2015-07-15 14:43:51      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:

第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 检索不同的值

  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 限制结果
  SELECT 语句返回指定表中所有匹配的行。如果我们只想返回第一行或者一定数量的行,该怎么办呢?
  -- 使用 TOP 关键字

SELECT TOP 5 prod_name
FROM Products
--    分析:使用 SELECT TOP 5 语句,只检索前 5 行数据

技术分享

 

2.7 使用注释
  行内注释:使用“--”

SELECT *    --行内注释
FROM Products;

 

  多行注释:使用“/* */”

/*
多行注释
SELECT *    
FROM Products;
*/

 

SQLServer:《SQL必知必会》一书的读书笔记(二)

标签:

原文地址:http://www.cnblogs.com/liqingwen/p/4647981.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!