我主要想介绍这两个关于SQL的试题:
1.现有一个表TB其在数据库中的内容如下:
字段 :工号 姓名 职称 销售额 所属部门经理工号
1 张三 普通员工 3100 8
2 李四 普通员工 2400 8
3 王五 普通员工 3500 8
...........
8 唐六 经理 3000 ----
要求用一条SQL语句查出:销售额大于经理的普通员工
2.要求返回表TB中字段SEX(SEX BIT)的新表TB1,在这个新表中如果SEX=1表示为男性,0表示为女性.
1.现有一个表TB其在数据库中的内容如下:
字段 :工号 姓名 职称 销售额 所属部门经理工号
1 张三 普通员工 3100 8
2 李四 普通员工 2400 8
3 王五 普通员工 3500 8
...........
8 唐六 经理 3000 ----
要求用一条SQL语句查出:销售额大于经理的普通员工
2.要求返回表TB中字段SEX(SEX BIT)的新表TB1,在这个新表中如果SEX=1表示为男性,0表示为女性.
select * from TB1 Inner Join (Select * from TB1 Where 职位='经理')t on t.工号=TB1.所属部门经理工号
Where TB1.销售额>t.销售额2.不知道什么意思!
当估计是想考察你对Case when的理解.
Select Case Sex When 0 Then '女' when 1 then '男' end
SELECT 姓名 FROM TB
WHERE 销售额 > (select 销售额 from TB where 职称='经理')2.
SELECT 工号,姓名,性别=
CASE sex
WHEN 1 THEN '男'
WHEN 0 THEN '女'
END
INTO TB1
FROM TB如果我没猜错你意思的话应该就是这样,呵呵!
什么时候应该用连接呢?
WHERE 销售额 > (select 销售额 from TB where 职称='经理') 上面这个SQL语句能行?应该不行吧还是同意风林火山的
SELECT 姓名 FROM TB
WHERE 销售额 > (select min(销售额) from TB where 职称='经理')
WHERE 销售额 > (select min(销售额) from TB where 职称='经理')
and 职称='普通员工'