学习笔记之SQL教程 from W3School

http://www.w3school.com.cn/sql/index.asp

从W3School的快速入门教程,简要的学习了SQL语法,并做如下标记。

  1. 操作符 BETWEEN ... AND 会选取介于两个值之间的数据范围。这些值可以是数值、文本或者日期。
  2. UNION 操作符用于合并两个或多个 SELECT 语句的结果集。请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。
  3. SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档。
  4. 我们通常希望在每次插入新纪录时,自动地创建主键字段的值。我们可以在表中创建一个 auto-increment 字段
  5. 内建SQL函数的语法是:SELECT function(列) FROM 表
  6. 在SQL中,基本的函数类型和种类有若干种。函数的基本类型是:Aggregate 函数和Scalar 函数。
  7. Aggregate 函数的操作面向一系列的值,并返回一个单一的值。
    注释:
    如果在 SELECT 语句的项目列表中的众多其它表达式中使用 SELECT 语句,则这个 SELECT 必须使用 GROUP BY 语句!
  8. GROUP BY 语句用于结合合计函数,根据一个或多个列对结果集进行分组。
  9. 在SQL中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。
  10. FORMAT 函数用于对字段的显示进行格式化。SQL FORMAT() 语法:SELECT FORMAT(column_name,format) FROM table_name
  11. 下面的表格列出了SQL Server 中最重要的内建日期函数:

函数

描述

GETDATE()

返回当前日期和时间

DATEPART()

返回日期/时间的单独部分

DATEADD()

在日期中添加或减去指定的时间间隔

DATEDIFF()

返回两个日期之间的时间

CONVERT()

用不同的格式显示日期/时间


以下是来自 W3School 的 SQL 快速参考。

语句

语法

AND / OR

SELECT column_name(s)
FROM table_name
WHERE condition
AND|OR condition

ALTER TABLE (add column)

ALTER TABLE table_name
ADD column_name datatype

ALTER TABLE (drop column)

ALTER TABLE table_name
DROP COLUMN column_name

AS (alias for column)

SELECT column_name AS column_alias
FROM table_name

AS (alias for table)

SELECT column_name
FROM table_name  AS table_alias

BETWEEN

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

CREATE DATABASE

CREATE DATABASE database_name

CREATE INDEX

CREATE INDEX index_name
ON table_name (column_name)

CREATE TABLE

CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
.......
)

CREATE UNIQUE INDEX

CREATE UNIQUE INDEX index_name
ON table_name (column_name)

CREATE VIEW

CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition

DELETE FROM

DELETE FROM table_name
(Note: Deletes the entire table!!)

or

DELETE FROM table_name
WHERE condition

DROP DATABASE

DROP DATABASE database_name

DROP INDEX

DROP INDEX table_name.index_name

DROP TABLE

DROP TABLE table_name

GROUP BY

SELECT column_name1,SUM(column_name2)
FROM table_name
GROUP BY column_name1

HAVING

SELECT column_name1,SUM(column_name2)
FROM table_name
GROUP BY column_name1
HAVING SUM(column_name2) condition value

IN

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

INSERT INTO

INSERT INTO table_name
VALUES (value1, value2,....)

or

INSERT INTO table_name
(column_name1, column_name2,...)
VALUES (value1, value2,....)

LIKE

SELECT column_name(s)
FROM table_name
WHERE column_name
LIKE pattern

ORDER BY

SELECT column_name(s)
FROM table_name
ORDER BY column_name [ASC|DESC]

SELECT

SELECT column_name(s)
FROM table_name

SELECT *

SELECT *
FROM table_name

SELECT DISTINCT

SELECT DISTINCT column_name(s)
FROM table_name

SELECT INTO
(used to create backup copies of tables)

SELECT *
INTO new_table_name
FROM original_table_name

or

SELECT column_name(s)
INTO new_table_name
FROM original_table_name

TRUNCATE TABLE
(deletes only the data inside the table)

TRUNCATE TABLE table_name

UPDATE

UPDATE table_name
SET column_name=new_value
[, column_name=new_value]
WHERE column_name=some_value

WHERE

SELECT column_name(s)
FROM table_name
WHERE condition

你可能感兴趣的:(学习笔记)