今天面试,遇到sql语句的问题了
以下全部为T-SQL编写的一些简单的SQL创建、修改、查询表的语句,对初学或欲练习SQL的朋友有点帮助!
一、创建表
Create table 演员信息表
( 学号 int identity primary key, --identity 标识自动加1
姓名 char(10) not null, --not null 不许为空值
年龄 char(10),
专业 char(10),
成绩 float,
城市 char(10),
)
注:如果创建列如:联系方式 int unique,--unique是使值为唯一
二、向表中添加记录
Insert into 演员信息表
Values (1,’冯小刚’,40,’导演’,89,’城市’)
三、修改表中的数据
Update 演员信息表
Set 成绩=成绩+5
Where 姓名=’冯小刚’
四、册除表中的数据
例1: 删除所有数据内容
Delete from 演员信息表
例2:删除表中姓名为赵本山的演员
Delete from 演员信息表
Where 姓名=’赵本同’
五、查询“演员信息表”中所有列
Select * --*代表所有列
From 演员信息表
六、查询“演员信息表”中部分列
Select 学号、姓名、成绩
From 演员信息表
七、查询前5条记录
Select top 5 学号、姓名、成绩
From 演员信息表
八、查询所有演员都来自哪几个城市
Select distinct 城市
From 演员信息表
九、Where子句的使用
(1)逻辑符号
= 、<> 或!=、>、>=、<、<=
And 是条件连接符
Or 是“或”
Between and 是范围
In 是范围
(2)查询城市是北京的演员所有信息
Select *
From 演员信息表
Where 城市=’北京’
(3)查询城市不是香港的演员所有信息
Select *
From 演员信息表
Where 城市<>’香港’
(4)查询演员的成绩在70至80之间的姓名
Select 姓名 from 演员信息表
Where 成绩 >=70 and 成绩 <=80
若:使用between and 来进行查询如下:
Select 姓名 from 演员信息表
Where 成绩 between 70 and 80
(5)查询年龄是90或95岁演员的所有信息
Select * from 演员信息表
Where 年龄=90 or 年龄=95
(6)查询专业为相声、演员和明星的演员所有信息
Select * from 演员信息表
Where 专业 in (‘相声’,’演员’,’明星’)
十、NULL值匹配
(1) 查询专业为空的演员所在城市和姓名
Select 姓名,城市 from 演员信息表
Where 专业is null ---专业为空的才被列出
(2)查询专为非空的演员所在城市和姓名
Select 姓名,城市 from 演员信息表
Where 专业 is not null //专业非空的才被列出
十一、通过关键字order by 将演员信息表中的成绩升序排列
Select * from 演员信息
Order by 成绩asc ----asc 是升序的关键字可以不输入
Desc ----desc 是降序
十二、常见聚合函数
Sum=总和; max=最大值;min=最小值;avg=平均值;count=计数
十三、Group By进行分组,只有select子句中包含了聚合函数时才能使用
(1)要查询同一个城市演员有多少人 (是根据是同一个城市的名字来计算其人数据的)
Select 城市,count(城市) as 人数
From演员信息表
Group by 城市
若加上以下语句
Having 城市=’北京’ //having条件子句只能应用于Group by子句中做条件
或 having count(城市) > 3 //只列出属于同一城市人数大于3的城市
(2) 要查询同一个城市演员的成绩平均分数
Select 城市,avg(成绩) as 平均分数
From 演员信息表
Group by 城市
Having avg(成绩) > 60 and 城市 = ‘北京’
十四、表的其它管理
(1) 将表中的某列设置为主键(primary key )
Alter table 演员信息表
Add primary key(学号)
(2)为表添加民族列
Alter table 演员信息表
Add 民族char(10)
(3) 删除表中民族列
Alter table 演员信息表
Drop column 民族
阅读(887) | 评论(0) | 转发(0) |