SQL基础学习

原创 2016年08月31日 11:49:47

SQL是Structured Query Language(结构化查询语言)的缩写。SQL是一种专门用来与数据库沟通的语言。

本文使用SQLite3测试。

SELECT prod_id  --利用SELECT语句从Products表中检索一个名为prod_name的列
FROM Products;
SELECT prod_id, prod_name, prod_price --检索多个列
FROM Products;
SELECT *  --检索所有列
FROM Products;
SELECT DISTINCT vend_id  --检索不同的值
FROM Products;
SELECT prod_name  --限制结果,返回不超过5行的值
FROM Products
LIMIT 5;
SELECT prod_name  --返回从第5行起的5行数据
FROM Products
LIMIT 5 OFFSET 5;
SELECT prod_name  --检索数据后排序显示
FROM Products
ORDER BY prod_name;
SELECT prod_id, prod_price, prod_name  --多个列排序,以先后顺序依次排序
FROM Products
ORDER BY prod_id, prod_price;
SELECT prod_id,prod_price,prod_name --按列位置排序
FROM Products
ORDER BY 2, 3;
SELECT prod_id,prod_price,prod_name  --制定排序方向,默认升序,指定DESC(降序),如果想在多个列进行降序排序,必须对每一列指定DESC关键字
FROM Products
ORDER BY prod_price DESC;
SELECT prod_name, prod_price  ——指定检索条件,只返回值为3.49的列
FROM Products
WHERE prod_price = 3.49;

WHERE子句操作符:
= 等于 <> 不等于
!= 不等于 < 小于
<= 小于等于 !< 不小于
‘>’大于 >=大于等于
!> 不大于 BETWEEN 在指定的两个值之间
IS NULL 为NULL值

SELECT prod_name, prod_price  ——范围值检查,检索价格在510之间的值
FROM Products
WHERE prod_price BETWEEN 5 AND 10;
SELECT cust_name  ——空值检查,只检索email为空的客户名
FROM Customers
WHERE cust_email IS NULL;
SELECT prod_id, prod_price, prod_name ——检索由供应商DLL01制造并且价格等于4.9的商品
FROM Products
WHERE prod_id = 'DLL01' AND prod_price = 4.9;
SELECT prod_name, prod_price ——OR操作符匹配任一条件而不是匹配两个条件
FROM Products
WHERE vend_id = 'DLL01' OR vend_id = 'BRS01';
SELECT prod_name, prod_price  ——求值顺序AND优先级高于OR,建议使用圆括号消除歧义
FROM Products
WHERE(vend_id='DLL01' OR vend_id='BRS01')                                                                  AND prod_price >= 10
SELECT prod_name, prod_price --检索由供应商DLL01和BRS01制造的所有产品
FROM Products
WHERE vend_id IN ( 'DLL01', 'BRS01')
ORDER BY prod_name;
SELECT prod_name, prod_price ——与上一功能相同
FROM Products
WHERE vend_id = 'DLL01' OR vend_id = 'BRS01'
ORDER BY prod_name;
SELECT prod_name  --检索非DLL01之外的所有东西
FROM Products
WHERE NOT vend_id = 'DLL01'
ORDER BY prod_name;
SELECT prod_id, prod_name  --使用通配符LIKE关键字和%,检索任意以Fish起头的词,不管Fish之后有多少字符
FROM Products
WHERE prod_name LIKE 'Fish%';
SELECT prod_id, prod_name  --搜索模式'%bean bag%'表示匹配任何位置上包含文本bean bag的值,不论它之前或之后出现什么字符
FROM Products
WHERE prod_name LIKE '%bean bag%';
SELECT prod_name  --检索以F起头、以y结尾的所有产品
FROM Products
WHERE prod_name LIKE 'F%y';
SELECT prod_id, prod_name  --一个下划线通配符匹配单个字符,可使用多个下划线。
FROM Products
WHERE prod_name LIKE '_ inch teddy bear'

创建计算字段,将检索的数据转换为应用程序所需要的格式,计算字段是运行时在SELECT语句内创建的。

SELECT vend_name || ' (' || vend_country || ')' --将检索的值以某种形式拼接到一起,类似于字符串拼接,SQLite使用||符号,其他DBMS可能使用函数或者+
FROM Vendors
ORDER BY vend_name;

大多数DBMS都支持RTRIM(),它去掉字符串右边的空格)、LTRIM()去掉字符串左边的空格)以及TRIM()(去掉字符串左右两边的空格)

别名(alias)是一个字段或值的替换名。以下使用关键字AS创建别名vend_titlie。

SELECT RTRIM(vend_name) + ' (' + RTRIM(vend_country) + ')' AS vend_titile
FROM Vendors
ORDER BY vend_name;

执行算术运算,对检索出的数据进行算术计算。下面输出中显示的expanded_price列是一个计算字段,此计算为quantity * item_price。 SQL算术操作符:+-*/。

SELECT prod_id, quantity, item_price,
              quantity * item_price AS expanded_price
FROM OrderItems
WHERE order_num = 20008
版权声明:本文为博主原创文章,转载请注明出处。

相关文章推荐

PL/SQL 基础学习材料

  • 2010-01-27 09:15
  • 2.93MB
  • 下载

oracle sql pl 基础学习

  • 2012-03-23 15:24
  • 20KB
  • 下载

Oracle学习总结(三)——SQL基础

一、SQL简介SQL标准由美国国家标准学会订立。主要用于存取数据及查询、更新和管理关系数据库系统。现行所有数据库基本都支持SQL语言,但又对各自SQL语言进行了改进。ORACLE使用的是PL\SQL语...

T-SQL 编程学习基础资料

  • 2016-03-15 15:47
  • 1.10MB
  • 下载

【SQLServer】T-SQL查询学习总结(2)[基础知识]

PS:这是是学习微软官方教程 《技术内幕 T-SQL查询》的笔记,样例数据库可以到这里下载。因为是自己作总计笔记之用,查资料的学习的同学注意,很可能对你没有帮助。 以下全文引用的是同一个...

sql学习宝典 基础资料

  • 2008-09-29 19:11
  • 215KB
  • 下载

java 从零开始,学习笔记之基础入门<SQL_Server_常用查询>(二十二)

SQL_Server_常用查询 --创建一张person表tb_person --表中的字段pid(id) pname(姓名) pass(密码) psex(性别) pcomp(公司) ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)