• day 04



    create table #mian2
    (
    cola int
    ,colb int
    ,colc int
    )


    insert into #mian2 values (1,2,3)
    insert into #mian2 values (5,2,3)
    insert into #mian2 values (5,9,3)

    表中有A B C三列,用SQL语句实现:当A列大于B列时选择A列否则选择B列,当B列大于C列时选择B列否则选择C列。


    select
    case when cola>colb then cola else colb end pan1
    ,case when colb>colc then colb else colc end pan2
    ,case when cola>colb and cola>colc then cola
    when colb>cola and colb>colc then colb
    else colc
    end max
    from #mian2

    --输出最大值 用嵌套的方法
    select
    case when colc >(case when cola>colb then cola else colb end )
    then colc else (case when cola>colb then cola else colb end )
    end max
    from #mian2

    --模板--
    case when condition1 then result1
    when condition2 then result2
    .....
    else resultn
    end

    3.面试题:一个日期判断的sql语句?
    请取出tb_send表中日期(SendTime字段)为当天的所有记录?(SendTime字段为datetime型,包含日期与时间)

    create table #mian
    (
    date_stamp date
    ,if_success varchar(20)
    )
    insert into #mian values ('2005-05-09','胜')
    insert into #mian values ('2005-05-09','胜')
    insert into #mian values ('2005-05-09','负')
    insert into #mian values ('2005-05-09','负')
    insert into #mian values ('2005-05-10','胜')
    insert into #mian values ('2005-05-10','负')
    insert into #mian values ('2005-05-10','负')
    insert into #mian values ('2018-05-21','test')


    select * from #mian
    where date_stamp=cast(GETDATE() as DATE)

    select cast(GETDATE() as DATE) --显示当天更新的数据--

    --varchar(20)表示显示的长度,120表示显示的格式--
    select CONVERT(varchar(20),GETDATE(),120)

    有一张表,里面有3个字段:语文,数学,英语。其中有3条记录分别表示语文70分,数学80分,英语58分,请用一条sql语句查询出这三条记录并按以下条件显示出来(并写出您的思路):
    大于或等于80表示优秀,大于或等于60表示及格,小于60分表示不及格。
    显示格式:
    语文 数学 英语
    及格 优秀 不及格


    create table #stud_core(
    yuwen int
    ,shuxue int
    ,yingyu int
    )
    insert into #stud_core values(70,80,58)
    select case when yuwen >= 80 then '优秀'
    when yuwen >=60 then '及格'
    else '不及格' end as 语文

    ,case when shuxue >= 80 then '优秀'
    when shuxue >=60 then '及格'
    else '不及格' end as 数学

    ,case when yingyu >= 80 then '优秀'
    when yingyu >=60 then '及格'
    else '不及格' end as 英语

    from #stud_core


    7.请用一个sql语句得出结果
    从table1,table2中取出如table3所列格式数据,注意提供的数据及结果不准确,只是作为一个格式向大家请教。
    如使用存储过程也可以。

    table1

    月份mon 部门dep 业绩yj
    ——————————-
    一月份 01 10
    一月份 02 10
    一月份 03 5
    二月份 02 8
    二月份 04 9
    三月份 03 8

    table2

    部门dep 部门名称dname
    ——————————–
    01 国内业务一部
    02 国内业务二部
    03 国内业务三部
    04 国际业务部


    create table sdata.dbo.open_order
    (
    Order_Source_Name nvarchar(255)
    ,Plant_Location_Number nvarchar(255)
    ,Plant_Location_Name nvarchar(255)
    ,Booked_Date nvarchar(255)
    ,Booked_Fiscal_Year nvarchar(255)
    ,Booked_Fiscal_Month nvarchar(255)
    ,Ordered_Date nvarchar(255)
    ,CRSD_Date nvarchar(255)
    ,Customer_Account_Number nvarchar(255)
    ,Customer_Name nvarchar(255)
    ,Product_Number nvarchar(255)
    ,Source_Order_Line_Flow_Status nvarchar(255)
    ,Fulfillment_Status nvarchar(255)
    ,Line_Number nvarchar(255)
    ,Line_Type nvarchar(255)
    ,Open_Flag nvarchar(255)
    ,Sales_Order_Number nvarchar(255)
    ,Purchase_Order_Number nvarchar(255)
    ,Order_Type nvarchar(255)
    ,Product_Name nvarchar(255)
    ,Ordered_Qty nvarchar(255)
    ,Reserved_Qty nvarchar(255)
    ,Open_Qty nvarchar(255)
    ,Shipped_Qty nvarchar(255)
    ,Order_Source_Description nvarchar(255)
    ,Created_By_Login nvarchar(255)
    )

    delete from sdata.dbo.open_order

  • 相关阅读:
    设计模式学习笔记——单例(Singleton)模式
    设计模式学习笔记——抽象工厂(Abstract Factory)模式
    一些C++的好书
    C++概念重载、覆盖、隐藏
    集合的子集和集合的全排列问题
    百度二面,悲剧了,附面试题,欢迎探讨。
    【翻译】ASP.NET MVC4 入门(二)添加一个Controller
    遇到问题应该多思考一下——由一个泛型方法想到的
    【翻译】ASP.NET MVC4 入门(四)添加一个Model
    我的第一篇博客——Delegate的秘密
  • 原文地址:https://www.cnblogs.com/simly/p/9451477.html
Copyright © 2020-2023  润新知