Chinaunix首页 | 论坛 | 博客
  • 博客访问: 97167
  • 博文数量: 20
  • 博客积分: 2000
  • 博客等级: 大尉
  • 技术积分: 294
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-24 10:29
文章分类

全部博文(20)

文章存档

2010年(2)

2009年(1)

2008年(17)

我的朋友

分类: Oracle

2008-09-04 20:47:43

今天面试,遇到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 民族
 
阅读(865) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~