易截截图软件、单文件、免安装、纯绿色、仅160KB

问个比较菜的sql语句

数据库表为
id      first_name last_name major      current_credits      grade

1 10000   Scott   Smith       Computer Science 98
2 10001   Margaret  Mason       History         88
3 10002   Joanne   Junebug    Computer Science 75
4 10003   Manish   Murgratroid Economics         66

对学生成绩分级别
update students
set grade = (
select grade from
(
select id,
case when current_credits > 90 then 'a'
    when current_credits > 80 then 'b'
    when current_credits > 70 then 'c'
else 'd' end grade
from students
) a
where a.id = students.id
);
请问大家为什么update student 的where语句写在括号里面就可以呢,说的稍微细一点。呵呵,刚刚研究sql比较菜。

补充下,上面的sql是可以简化的

UDPATE students
  SET grade=(
      CASE WHEN current_credits > 90 THEN 'a'
            WHEN current_credits > 80 THEN 'b'
            WHEN current_credits > 70 THEN 'c'
            ELSE 'd'
   


相关问答:

总会碰到怪的问题,sql问题

sql2005
select *from v_ddxx where d_sfsc='0' and (g_ssbm='1001' or g_ssbm='1002') and (xxf>0 and  xxfwzf <>0 ),执行速度慢的要死,但是如果把(xxf>0 and  ......

sql 问题

PB中开发的。

DateTime startTime=DateTime(em_1.Text)
DateTime endTime=DateTime(em_2.Text)

string sql
sql = dw_1.GetSQLSelect()+"Where (StartTime> '"+startTime+&q ......

sql 问题

DateTime startTime=DateTime(em_1.Text)
DateTime endTime=DateTime(em_2.Text)

string sql
sql = dw_1.GetSQLSelect()+"Where (StartTime> '"+startTime+"') and (EndTime ......

csv文件转换成sql导入到数据库,没有数据为何?

执行的顺序:
1)文件浏览框(选择文件使用)
选择好文件后
点击一个导入按钮的时候 ,把上面上传框里的csv文件以一个ID为文件名,上传到**/**文件夹下
2)读取这个文件夹下的csv的文件,转换成sql
3 ......

SQL语句效率问题 - 其他数据库开发 / 其他数据库

大家帮忙看看这2个sql语句哪个查询的速度更快点。谢谢帮忙。比较着急。在做性能测试。
select * from
  表A LEFT OUTER JOIN 表B ON (表A.id || ' ' =表B.id) ,表C , 表D, 表E
Where其他条件
select * ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号