可以把 SQL 分为两个部分:数据操作语言 (DML) 和 数据定义语言 (DDL)。
SQL (结构化查询语言)是用于执行查询的语法。但是 SQL 语言也包含用于更新、插入和删除记录的语法。
查询和更新指令构成了 SQL 的 DML 部分:
SELECT - 从数据库表中获取数据
UPDATE - 更新数据库表中的数据
DELETE - 从数据库表中删除数据
INSERT INTO - 向数据库表中插入数据
选择:select * fromtable1 where 范围
插入:insert intotable1(field1,field2) values(value1,value2)
删除:delete from table1where 范围
更新:update table1 set field1=value1 where 范围
SQL 中最重要的 DDL 语句:
CREATE DATABASE - 创建新数据库
ALTER DATABASE - 修改数据库
CREATE TABLE - 创建新表
ALTER TABLE - 变更(改变)数据库表
DROP TABLE - 删除表
CREATE INDEX - 创建索引(搜索键)
DROP INDEX - 删除索引
创建数据库:CREATE DATABASE database-name
删除数据库:drop database dbname
创建新表:create table tabname(col1 type1 [not null][primary key],col2 type2 [not null],..)
根据已有的表创建新表:select * into tablenew from tableold
删除新表:drop table tabname
增加一个列:Alter table tabname add column col type
添加主键:Alter table tabname add primary key(col)
删除主键:Alter table tabname drop primary key(col)
创建索引:create[unique] index idxname on tabname(col….) include(col.)
删除索引:drop index idxname
创建视图:create view viewname as select statement
删除视图:drop view viewname
内连接: Select * from A JOIN B ON A.Aid=B.Bnameid
左外连接: select * from A Left JOIN B ON A.Aid=B.Bnameid
右外连接: select * from A Right JOIN B ON A.Aid=B.Bnameid
DML:CASE .....WHEN
方式一:
select name , --注意逗号
case level --case后跟条件
when 1 then '骨灰'
when 2 then '大虾'
when 3 then'菜鸟'
end as'头衔'
from [user]
方式二:
select studentId,
case
when english >=80 then '优'
when english >=60 then '良'
else '差'
end
from Score
DML的SQL查询执行顺序
5>…Select 5-1>选择列,5-2>distinct,5-3>top
1>…From 表
2>…Where 条件
3>…Group by 列
4>…Having 筛选条件
6>…Order by 列