zoukankan      html  css  js  c++  java
  • 第十章模糊函数和聚合函数

    ** 模糊查询:《模糊查询可以使用like、通配符来进行》


    -- 通配符:
    _ 一个字符
    例:A like 'C_' 符合条件的A   如:CS、Cd


    % 任意长度的字符串
    例:B like 'CO%'符合条件的B 如:CONST、COKE


    [] 括号中所指定范围内的一个字符
    例:C like '9W0[1-2]'符合条件的C 如:9W01、9W02


    [^] 不在括号中所指定范围内的任意一个字符
    例:D like '9W0[^1-2]'符合条件的D 如:9W03、9W07




    ** 使用 like 进行模糊查询


    查询姓‘张’学生信息:
    语句:select * from Student where SName like '张%'

    查询住址包含‘湖南’字样的学生:
    语句:select * from Student where SAddress like '%湖南%'




    ** 使用 between 在某个范围内进行查询:
    解释:查询两个已知值之间的值或不是两个值之间的值。已知值分为:初值、终值。初值<=终值。
    初值和终值之间用 and 分开。


    例:分数在60 到 80 之间的信息:
    select  列名,列名 from 表名 where 列名 between 60 and 80


    实例: select  StudentID,Score from Core where Score between 60 and 80

    如果写成下面的形式:《不会报错,但也不会显示任何信息》
    select  StudentID,Score from Core where Score between 80 and 60 《数值应该是从小到大》



    ** 查询日期范围《这个使用的比较多》
    例:查询不在 2013-1-1 到 2013-10-1 之间订购的图书:
    select * from 表名 where 列名 not between '2013-1-1' and '2013-10-1'


    实例: select * from Sales where ord_date between '2013-1-1' and '2013-10-1'

    注:使用 not 来对现在条件进行‘取反’操作
    实例: select * from Sales where ord_date not between '2013-1-1' and '2013-10-1'




    ** 使用 in 在列举值内进行查询:
    查询的值是某些值里面的某一个,这时就可以用列举值 in 来进行查询。《将列举值放在圆括号里,用逗号分开。》


    例:查询湖南、广州、上海的学生姓名
    select SName as 学生姓名,SAddress as 地址
    from Student
    where left(SAddress,2) in ('湖南','广州','上海')

    注:使用 not 可以得到所有不匹配的列举值的行。《列举值类型必须与匹配的列具有相同的数据类型》




    *** T-SQL 中的聚合函数


    ** sum()函数:返回表达式中所有数值的和,空值将被忽略。《只用于数字类型的列。不能够汇总字符、日期等其他数据类型。》
    例:查询学生编号为23的考试总分。
    select sum(列名) as 学生编号为23的总分 from 表名 where StudentID=23


    实例: select sum(Scores) as 学生编号为23的总分 from Score where StudentID=23



    注意:这种查询只返回一个数值,因此,不能直接与可能返回多行的列一起使用来进行查询。
    例: select sum(Scores) as 学生编号为23的总分 ,CourseID as 科目编号 from Score where StudentID=23
    将会报错!《但是在一个查询中可以同时使用多个聚合函数》



    ** avg()函数:返回表达式中所有数值的平均值,空值将被忽略。《只用于数字类型的列》
    例: 及格学生平均分成绩
    select avg(Scores) as 及格成绩平均分 from Score wher Scores>=60




    ** max()函数 和 min()函数
    max :返回表达式中的最大值《忽略任何空值》
    min :返回表达式中的最小值《忽略任何空值》
    可用于 数值类型、字符类型、日期类型、时间类型 的列。
    对于字符的列:max()函数查找排序序列的最大值、min()函数返回排序序列的最小值。


    例:查询平均成绩、最高分、最低分。
    select avg(Scores) as 平均分,max(Scores) as 最高分,min(Scores) as 最低分 from Score where Scores>=60


    ** count()函数:返回提供的组或记录集中的计数。用于《除 text、image、ntext外的任何类型的列》
                   也可以用 * 来作为count()的表达式,使用*可以不必指定特定的列而计算所有行的数,当对所有行进行计数时,则包含空值的行。


    例:查询总记录数的语句:
    select count(*) as 总记录数 from Score


    例:查询单列 Scores 记录数的语句:
    select count(Scores) as 总记录数 from Score 


    例;验证登录用户密码语法
    select count(*) from 表名 where  name="Jack" and pwd="123456"

  • 相关阅读:
    Python基础之基本数据类型
    Python基础之变量
    mysql数据库
    进程与线程
    并发编程
    网络编程
    内置函数(魔法方法)
    组合,封装,访问限制机制,property装饰器
    面向对象之继承
    Web开发中最致命的8个小错误
  • 原文地址:https://www.cnblogs.com/1402380606HZ/p/7724261.html
Copyright © 2011-2022 走看看