SQL基础语法巩固

推荐http://www.w3school.com.cn/sql/index.asp,适合快速查找sql基础语法,当然还有其他的html/css这些知识,很方便

       学习SQL语法,日常工作使用不是很频繁的话,不一定要求遇到问题立马写出相应的语句。记住简单的增删改查+知道高级SQL可以做什么,需要用到的时候能够去查找就可以,当然,能记住最好,技多不压身。

         遇到一个同事对SQL很熟,随手就能写出多表查询语句,羡慕啊,所以决定重温SQL,好歹知道个大概。

简单列举下SQL的日常语句和功能(部分转自w3school)

一.可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。

简单来说,DDL是对数据库表结构的操作,DML是对其中数据的操作,在项目中执行SQL脚本时,通常需要先执行DDL再执行DML,因为一般数据的操作是基于表的操作的。

SQL (结构化查询语言)是用于执行查询的语法。但是 SQL 语言也包含用于更新、插入和删除记录的语法。

查询和更新指令构成了 SQL 的 DML 部分:

  • SELECT - 从数据库表中获取数据(查)
  • UPDATE - 更新数据库表中的数据(改)
  • DELETE - 从数据库表中删除数据(删)
  • INSERT INTO - 向数据库表中插入数据(增)

SQL 的数据定义语言 (DDL) 部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的链接,以及施加表间的约束。

SQL 中最重要的 DDL 语句:

  • CREATE DATABASE - 创建新数据库
  • ALTER DATABASE - 修改数据库
  • CREATE TABLE - 创建新表
  • ALTER TABLE - 变更(改变)数据库表
  • DROP TABLE - 删除表
  • CREATE INDEX - 创建索引(搜索键)
  • DROP INDEX - 删除索引

二.SQL高级语法

1.TOP子句,用于规定要返回的记录的数目

*语法
SELECT column_name(s)
FROM table_name
LIMIT number

*例子
SELECT *
FROM Persons
LIMIT 5

2.SQL LIKE 操作符,用于在 WHERE 子句中搜索列中的指定模式

*语法
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern

*例子
SELECT * FROM Persons
WHERE City LIKE 'N%'  *以N开头的城市

3.SQL 通配符,

在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。

SQL 通配符必须与 LIKE 运算符一起使用。

4.SQL IN 操作符,允许我们在 WHERE 子句中规定多个值

*语法
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...)

*例子
SELECT * FROM Persons
WHERE LastName IN ('Adams','Carter')

5.SQL BETWEEN 操作符,操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期

*语法
SELECT column_name(s)
FROM table_name
WHERE column_name
BETWEEN value1 AND value2

*例子
SELECT * FROM Persons
WHERE LastName
BETWEEN 'Adams' AND 'Carter'

注意:如果value1和value2是数值,则不需要单引号

6.SQL Alias(别名),通过使用 SQL,可以为列名称和表名称指定别名(Alias)

*表的SQL Alias语法
SELECT column_name(s)
FROM table_name
AS alias_name

*列的SQL Alias语法
SELECT column_name AS alias_name
FROM table_name

*使用表名称别名
SELECT po.OrderID, p.LastName, p.FirstName
FROM Persons AS p, Product_Orders AS po
WHERE p.LastName='Adams' AND p.FirstName='John'

*使用一个列名别名
SELECT LastName AS Family, FirstName AS Name
FROM Persons

7.SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据

SELECT Persons.LastName, Persons.FirstName, Orders.OrderNo
FROM Persons
INNER JOIN Orders
ON Persons.Id_P = Orders.Id_P
ORDER BY Persons.LastName

除了我们在上面的例子中使用的 INNER JOIN(内连接),我们还可以使用其他几种连接。

下面列出了您可以使用的 JOIN 类型,以及它们之间的差异。

  • JOIN: 如果表中有至少一个匹配,则返回行
  • LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
  • RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
  • FULL JOIN: 只要其中一个表中存在匹配,就返回行

还有一些其他的一些语法,SQL函数,后面补充

猜你喜欢

转载自blog.csdn.net/qq_36404042/article/details/81809798