zoukankan      html  css  js  c++  java
  • sql server 的语句形式

    语句形式

    insert 语句:


    一般插入数据语句:

    插入null

    向表中插入几列数据:

    将一张表的查询结果,插入另一张表:

    使用select into 也是可行的:

    break insert 语句,他可以将符合格式的TXT 等文本将其倒入导符合数据格式的数据表当中。
    例如:

    这就是txt文件的格式,下面是数据库语句:

    update 的语句形式

    UPDATE table_or_view_name
    SET column_name = expression, …
    WHERE search_condition

    更新莫条数据:

    更新所有数据的某列数据:

    再update 中使用from 子语句

    删除语句:

    DELETE
    FROM table_or_name
    WHERE search_condition

    例如:

    还有就是truncate table 语句但是由于该语句和delete 语句都可以删除表中全部语句,但是使用truncate table 语句后不会再数据库日志中记载,删除效果盛嘉,不建议使用。

    查询语句

    基本查询数据表:
    select * from table
    go
    在SELECT语句中,可以在SELECT子句中选择指定的数据列、使用文字串、改变列标题、执行数据运算、使用ALL关键字、使用DISTINCT关键字等。
    选择指定的数据列是指可以在SELECT子句中指定将要检索的列名称。
    选择指定的列名称要注意以下几点:第一,这些列名称应该与表中定义的列名称一致,否则就可能出错或者得到意想不到的结果;第二,列名称之间的顺序既可以与表中定义的列顺序相同,也可以不相同;第三,SELECT语句的检索结果只是影响数据的显示,对表中存储的数据没有任何影响。
    例如检索制定的数据列;

    通常,直接阅读SELECT语句的检索结果,是一件头疼的事情,因为显示出来的数据,是一些不连贯的、阅读性不强的信息。为了提高SELECT语句检索结果的可读性,可以通过在SELECT关键字后面增加文字串。通常情况下,使用单引号将文字串引起来。
    例如:

    还有在其中添加单引号:

    查询时改变列的名称 的 as:

    算数运算:

    数据运算是指对检索的数据进行各种运算。也就是说,可以在SELECT关键字后面列出的列项中使用各种运算符和函数。
    这些运算符和函数包括算术运算符、数学函数、字符串函数、日期和时间函数、系统函数等。
    例如:

    数学运算:

    关键字distinct
    在SELECT语句中,可以在SELECT子句中通过使用ALL或DISTINCT关键字控制查询结果集的显示样式。ALL关键字表示检索所有的数据,包括重复的数据行。DISTINCT关键字表示仅显示那些不重复的数据行,重复的数据行只显示一次。由于ALL关键字是默认值,所以当没有显式使用ALL或DISTINCT关键字时,默认使用ALL关键字。

    排序order by

    在使用SELECT语句时,排序是一种常见的操作。排序是指按照指定的列或其他表达式对结果集进行排列顺序的方式。SELECT语句中的ORDER BY子句负责完成排序操作。在排序时,可以按照升序排列,也可以按照降序排列。关键字ASC表示升序,DESC表示降序,默认情况下是升序。
    例如:

    三个列:

    使用 TOP(1) percent语句:

    使用 TOP(1) percent with ties 子句:

    where 条件查询;

    在很多实际应用情况下,只需要表中的一部分数据。例如,在包含有数百万、数千万行数据的表中,可能永远也不会执行一个检索表中全部数据的语句,因为在一次查询中处理表中全部数据几乎是不现实的。
    在SELECT语句中,WHERE子句指定将要搜索的数据行的条件。也就是说,只有满足WHERE子句条件的数据行才会出现在结果集中。这些搜索条件可以分为简单搜索条件、模糊搜索条件和复合搜索条件。
    在WHERE子句中,简单搜索条件是指使用比较运算符、范围、列表、合并以及取反等运算方式形成的搜索条件。

    例如:

    模糊条件查询like:

    LIKE关键字用于检索与特定字符串匹配的字符数据。LIKE关键字后面可以跟一个列值的一部分而不是一个完整的列值,从而形成LIKE子句。LIKE子句的语法形式如下:
    match_expression [NOT] LIKE pattern [ESCAPE escape_character]

    符合条件搜索:
    在WHERE子句中可以使用逻辑运算符把若干个搜索条件合并起来,组成复杂的复合搜索条件。这些逻辑运算符包括AND,OR和NOT。
    AND运算符表示只有在所有条件都为真时,才返回真。OR运算符表示只要有一个条件为真时,就返回真。NOT运算符取相反。当在一个WHERE子句中,同时包含多个逻辑运算符时,其优先级从高到低依次是NOT、AND和OR
    例如:

    聚合函数查询:
    select 聚合查询例如:

    compute 聚合查询例如需要指出的是,在SELECT子句中出现聚合函数时,结果集中的数据全是聚合值,没有明细值。这是使用SELECT子句计算聚合值的缺点。能否解决这种问题呢?能,解决方法就是使用COMPUTE子句。
    COMPUTE子句使用聚合函数计算聚合值,并且可以依然保持原有的明细值,新的聚合值作为特殊的列出现:

    分组 group by

    聚合函数只能产生一个单一的汇总数据,使用GROUP BY子句,则可以生成分组的汇总数据。GROUP BY子句把数据组织起来分成组。一般情况下,可以根据表中的某一列进行分组,通过使用聚合函数,对每一个组可以产生聚合值。如果需要过滤某些分组,可以使用HAVING子句。分组技术是指使用GROUP BY子句完成分组操作的技术。
    GROUP BY子句、HAVING子句和聚合函数一起完成对每一个组生成一行和一个汇总值。在使用GROUP BY子句和HAVING子句的过程中,要求考虑下列一些条件
    例如:


    ROLLUP和CUBE关键字
    例如:

    联合查询:

    交叉查询例如:

    内连接:

    左连接:

    子查询语句:

    SELECT语句可以嵌套在其他语句中,这些语句包括SELECT、INSERT、UPDATE或DELETE等,这些嵌套的SELECT语句被称为子查询。当一个查询依赖于另外一个查询结果时,则可以使用子查询。在某些查询中,查询语句比较复杂不容易理解,因此可以使用子查询方式把这些复杂的查询语句分解成多个比较简单的查询语句形式。使用子查询方式完成查询操作的技术是子查询技术。
    例如:

    集合运算:

    查询语句的结果集往往是一个包含了多行数据的集合。集合之间可以进行并、差、交等运算。在Microsoft SQL Server系统中,两个查询语句之间也可以进行集合运算。其中,UNION运算符表示并集运算,EXCEPT运算符从左查询中返回右查询中没有找到的重复值,INTERSECT运算符则返回左右两个查询语句都包含的所有非重复值。需要注意的是,在集合运算时,所有查询语句中列的数量和顺序必须相同,且数据类型必须兼容

    公式表达式:

    在Microsoft SQL Server系统中,可以使用公用表表达式(common table expression,CTE)。CTE是定义在SELECT、INSERT、UPDATE或DELETE语句中临时命名的结果集,CTE也可以用在视图的定义中。在CTE中,可以包括对自身的引用,因此这种表达式也被称为递归CTE。
    简单使用 CTE

    PIVOT和UNPIVOT

    PIVOT和UNPIVOT是从Microsoft SQL Server 2005开始新增的关系运算符,提供了一种把列数据转换为行数据的方式。PIVOT运算符把表达式中某一列中的数据转换为输出中的多个列,UNPIVOT运算符则相反。

    例如:

  • 相关阅读:
    对称加密算法:替代算法与置换算法
    cin与getline
    延迟任务实现方式
    @Validated校验
    mac 终端 常用命令
    IOS和Android的区别[转]
    [IOS] NSIndexPath , NSIndexSet , NSRange 之间的区别比较
    [IOS]iphone开发之UIImage应用与内存管理,UIImage加载图像方法
    CorePlot SDK的安装以及应用
    [IOS] iphone 之 横屏和自动旋转
  • 原文地址:https://www.cnblogs.com/wuzifan/p/14755975.html
Copyright © 2011-2022 走看看