zoukankan      html  css  js  c++  java
  • day 16面试题

    查询出没门课程都大于80的学生的姓名


    select name from table group by name having MIN(fenshu)>80

    编号自增:identity(1,1)

    删除除了编号以后,其他信息相同的信息
    自动编号 学号 姓名 课程名称 分数
    1 200 张三 数学 89
    2 200 张三 数学 98
    3 201 李四 数学 65

    create table sdata.dbo.test(
    id varchar(20)
    ,xh varchar(20)
    ,name varchar(20)
    ,ckname varchar(20)
    ,fs varchar(20)
    )

    insert into sdata.dbo.test
    values(
    '1', '200', '张三', '数学',89
    )
    insert into sdata.dbo.test
    values(
    '6' , '200','张三', '数学',98
    )

    insert into sdata.dbo.test
    values(
    '3', '201','李四','数学',86
    )
    insert into sdata.dbo.test
    values(
    '5', '202','王五','数学', 86
    )

    select * from sdata.dbo.test

    用row_number 排序找出大于1的
    select ID
    --into sdata.dbo.delete_id
    from (
    select *,
    row_number()over(partition by xh,name,ckname,fs order by id asc) as paixu
    from sdata.dbo.test) a
    where paixu> 1

    select * from sdata.dbo.delete_id

    --删除大于1的数据
    delete from sdata.dbo.test
    where exists
    (select 1 from sdata.dbo.delete_id
    where sdata.dbo.delete_id.id = sdata.dbo.test.id
    )

    abcd四种 求不同的结果
    create table sdata.dbo.name_play(
    name varchar(20)
    )
    insert into sdata.dbo.name_play values('a')
    insert into sdata.dbo.name_play values('b')
    insert into sdata.dbo.name_play values('c')
    insert into sdata.dbo.name_play values('d')

    select distinct a.name,b.name from sdata.dbo.name_play a
    left join sdata.dbo.name_play b
    on a.name<>b.name

    不分主客场的话

    select distinct a.name,b.name from sdata.dbo.name_play a
    inner join sdata.dbo.name_play b
    on a.name<b.name


    怎么把一个表竖表转化成横表 用转至算
    create table sdata.dbo.zhuanzhi(
    year varchar(20)
    ,month varchar(20)
    ,amount varchar(20)
    )

    insert into sdata.dbo.zhuanzhi values(
    '1992','4','2.4'
    )
    select * from sdata.dbo.zhuanzhi

    select YEAR
    ,MAX(mon_1) mon_1
    ,MAX(mon_2) mon_2
    ,MAX(mon_3) mon_3
    ,MAX(mon_4) mon_4
    into sdata.dbo.heng
    from(
    select YEAR
    ,case when month = 1 then amount else null end mon_1
    ,case when month = 2 then amount else null end mon_2
    ,case when month = 3 then amount else null end mon_3
    ,case when month = 4 then amount else null end mon_4
    from sdata.dbo.zhuanzhi) a
    group by YEAR

    --横表转纵表

    select YEAR
    ,mon_1 as amount
    ,'1' as month
    from sdata.dbo.heng
    union all
    select YEAR
    ,mon_2 as amount
    ,'2' as month
    from sdata.dbo.heng
    union all
    select YEAR
    ,mon_3 as amount
    ,'3' as month
    from sdata.dbo.heng
    union all
    select YEAR
    ,mon_4 as amount
    ,'4' as month
    from sdata.dbo.heng

  • 相关阅读:
    Redis 3.0.4 链表
    Redis 3.0.4 简单动态字符串(sds)
    4. 寻找两个有序数组的中位数
    redis主从同步异常
    redis重命名flushall和flushdb重启失败
    redis3.2 aof重写
    【转载】Redis 4.0 自动内存碎片整理(Active Defrag)源码分析
    [转]memcached对key和value的限制 memcached的key最大长度和Value最大长度
    LSM树(Log-Structured Merge Tree)存储引擎
    Linux使用详解(进阶篇)
  • 原文地址:https://www.cnblogs.com/simly/p/9513864.html
Copyright © 2011-2022 走看看