zoukankan      html  css  js  c++  java
  • 几个经典的sql语句

    1.关于group by的sql语句
    表结构:
    year          month        amount
    1991       1         1.1       
    1991       2         1.2       
    1991       3         1.3       
    1992       1         2.1       
    1992       2         2.2       
    1992       3         2.3     
    显示结果:
    year          m1               m2             m3  
    1991       1.1       1.2       1.3       
    1992       2.1       2.2       2.3       
    sql的写法:
    select year,
    (select amount from test as m where month='1' and test.year=m.year) as m1,
    (select amount from test as m where month='2' and test.year=m.year) as m2,
    (select amount from test as m where month='3' and test.year=m.year) as m3
    from test group by year
    2.请教一个面试中遇到的SQL语句的查询问题
    表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。
    ------------------------------------------
    select (case when a>b then a else b end ),
    (case when b>c then b esle c end)
    from table_name
    3.面试题:一个日期判断的sql语句?
    请取出tb_send表中日期(SendTime字段)为当天的所有记录?(SendTime字段为datetime型,包含日期与时间)
    ------------------------------------------
    select * from tb where datediff(dd,SendTime,getdate())=0
    4.有一张表,里面有3个字段:语文,数学,英语。其中有3条记录分别表示语文70分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来(并写出您的思路):?
    大于或等于80表示优秀,大于或等于60表示及格,小于60分表示不及格。?
    显示格式:?
    语文 数学 英语?
    及格 优秀 不及格?
    ------------------------------------------
    select
    (case when 语文>=80 then '优秀'
    when 语文>=60 then '及格'
    else '不及格') as 语文,
    (case when 数学>=80 then '优秀'
    when 数学>=60 then '及格'
    else '不及格') as 数学,
    (case when 英语>=80 then '优秀'
    when 英语>=60 then '及格'
    else '不及格') as 英语,
    from table

  • 相关阅读:
    Android View部分消失效果实现
    Android TV Overscan
    一招搞定短信验证码服务不稳定
    揭秘:网上抽奖系统如何防止刷奖
    SVN迁移到GIT
    Android之高效率截图
    Android TV 开发(5)
    Android 标题栏(2)
    Android 标题栏(1)
    一步步教你学会browserify
  • 原文地址:https://www.cnblogs.com/xlhblogs/p/2212676.html
Copyright © 2011-2022 走看看