zoukankan      html  css  js  c++  java
  • 查询总结

     基本查询     

    1、select * from department  

    2、distinct 去除重复行     top 5     top 10 percent  

    3、聚合函数    --avg() 平均值    --sum 求和    --count 求行数    --min 求最小值    --max 求最大值  

    4、带条件查询   

    select 列 from 表 where 条件   

    between...and...   

    in (1,3,5)  lie = 1 or lie =3   

    模糊查询 like  %代表任意多字符  _代表任意单个字符  

    [0-9][a-Z]不区分大小写 [acd]  匹配范围内的单个字符  

    5、查找null值 is null   is not null=================     

    6、对查询排序 order by 列名 asc升序(可省略)  desc 降序  

    7、难点====分组查询group by...having    在分组查询中,查询的列名   

    必须出现在group by后或者在聚合函数中    --查询平均工资大于两千块钱的部门   

    select department_id,avg(wages)   

    from employee   

    where department_id  is not null   

    group by department_id   

    having avg(wages)>2000   以上都是要掌握的,下面是要了解的  

    8、同时插入多条语句    把查询到的结果插入到现有表中    

    insert into 现有表     select 字段     from 表    把现有表的数据插入到一个新表     

    select 字段     into 新表     from 表    --把现有表的数据插入到新表(表不能存在)   

    --select * into newStudent from student    --把现有表的数据复制到一个已存在的表   

    --insert into backupStudent select * from students     

    9、合并查询union 去除重复项    union all 不去除重复项 所以效率高      一次插入多条数据    insert into Score(studentId,english,math)    select 1,80,100 union    select 2,60,80

    函数

    1、ISNULL(expression,value)     如果expression不为null返回expression表达式的值,否则返回value的值

    2、字符串函数   

    LEN() :计算字符串长度   

    LOWER() 、UPPER () :转小写、大写   

    LTRIM():字符串左侧的空格去掉   

    RTRIM () :字符串右侧的空格去掉   

    LTRIM(RTRIM('         bb        '))   

    LEFT()、RIGHT()  截取取字符串   

    SUBSTRING(string,start_position,length)   

    参数string为主字符串,start_position为子字符串在主字符串中的起始位置(从1开始),

    length为子字符串的最大长度。

    SELECT  SUBSTRING('abcdef111',2,3)   

    REPLACE(string,oldstr,newstr)

      3、日期函数   

    GETDATE() :取得当前日期时间   

    DATEADD (datepart , number, date ),计算增加以后的日期。参数date为待计算的日期;参数number为增量;参数datepart为计量单位,可

    选值见备注。

    DATEADD(DAY, 3,date)为计算日期date的3天后的日期,而DATEADD(MONTH ,-8,date)为计算日期date的8个月之前的日期   

    DATEDIFF ( datepart , startdate , enddate ) :计算两个日期之间的差额。 datepart 为计量单位,可取值参考DateAdd。    

    DATEPART (datepart,date):返回一个日期的特定部分 整数    DATENAME(datepart,date):返回日期中指定部分 字符串   

    YEAR() MONTH() DAY()  

    4、类型转换函数

       CAST ( expression AS data_type)    

    case(score as varchar(10))   

    CONVERT ( data_type, expression[,style])   

    取日期部分     2012-12-21    

    1、CONVERT(varchar(100),getdate(),23)    

    2、CONVERT(varchar(10),getdate(),21)

    嵌套查询(子查询)   子查询返回的值不止一个。  --当子查询跟随在 =、!=、<、<=、>、>= 之后,或  子查询用作表达式时,这种情况是不允许的。

     在子查询中,一搬我们会使用in 代替 =使用  

    select employee_id,employee_name  

    from employee   where department_id in  (     

                          select department_id       

                          from department where department_name='销售部' 

                            )

    连接查询  

    内连接  inner join...on...    查询满足on后面条件的数据  外连接    

    左连接    left join...on...     先查出左表中的所有数据     再使用on后面的条件对数据过滤   

    右连接     right join...on...     先查出右表中的所有数据     再使用on后面的条件对数据过滤

    交叉连接    cross join 没有on     第一个表的每一行和后面表的每一行进行连接     没有条件。是其它连接的基础

  • 相关阅读:
    vipw和vigr命令
    linux sudo命令
    linux中切换用户方式su和su -的区别
    ls Common Command-Line Options
    字符串同构问题 字符串操作:数组计数字符个数问题
    聚类算法
    Python实践之(七)逻辑回归(Logistic Regression)
    Gradient Boost Decision Tree(&Treelink)
    天池大数据周冠军分享|附移动推荐算法赛答辩会Top5选手PPT
    【天池大数据赛题解析】资金流入流出预测(附Top4答辩ppt)
  • 原文地址:https://www.cnblogs.com/lifesteven/p/2652987.html
Copyright © 2011-2022 走看看