基本T-SQL语句

来源:互联网 发布:网络管理总结 编辑:程序博客网 时间:2024/05/16 14:31

基本T-SQL语句
 
一、查询语句(SELECT)
 
SELECT语句的基本语法:

       SELECT [ALL|DISTINCT] <目标列表达式> [AS 列名][,<目标列表达式> [AS 列名] ...]
 
         FROM <表名> [,<表名>…]
 
            [WHERE <条件表达式> [AND|OR <条件表达式>...]
 
               [GROUP BY 列名]
 
                 [HAVING <条件表达式>>]
 
                  [ORDER BY 列名 [ASC | DESC>]]
 
 注:以上语句由方括号为可选项,尖括号为必填项。

1)、WHERE子句。
 
WHERE子句用于对数据库查询进行条件设定.
 
eg:SELECT s.name FROM student s WHERE s.year>=2003;//其表示查询数据库student中year值大于2003的行的name值。
 
在SELECT中可以使用的运算符有:
 
        (1).>,>,<=,>=,=,<>,!=,!>,!<
 
        (2).AND,OR,NOT
 
        (3).BETWEEN
 
        (4).LIKE  通配符有:%,_,[ ],[^]      
 
        (5).IN 

        (6).ALL,ANY,SOME   其中ANY和SOME运算符相似
 
        (7).EXISTS(用于子查询)
 
 2)、ORDER BY
 
        ORDERY BY语句用于对返回的结果集进行排序。其排序的方式总是系统按最小的方式来进行排序。如果我们需要查询的结果按字母,数字等等自然顺序或者逆序来排序,那请用ASC或者DESC关键字。其中ASC关键字用于按升序排列,而DESC关键字用于按降序的方式排序。
 
3)、GROUP BY
 
GROUP BY语句用于分组查询,其一般与聚合函数一起使用。其将数据分为各个小块,在对各个小块进行一些处理和操作(函数实现)。
 
eg:SELECT COUNT(*) FruitName AS 水果种类, ProductPlace AS 出产国 FROM   test   GROUP BY ProductPlace
 
       上面的SELECT语句的意思是:首先将test数据库中的数据按出产国进行分组,在有COUNT(*)对每个分组也就是出产国的水果种类进行计数(水果种类数)。

一些函数:SUM(行名),AVG(行名),MIN(行名),MAX(行名),COUT(*)用于计算函数。。。等等。其中上面这些,在没有使用GROUP BY子句的时候,只有SUM和AVG能使用在SELECT语句中,但不用指明行名。
 
4)、HAVING 子句
 
HAVING子句和WHERE子句一样同为查询条件。但他们在SELECT语句中执行的优先级不同。
 
一般SQL Select语句完整的执行顺序:
 
         1、from子句组装来自不同数据源的数据;
 
         2、where子句基于指定的条件对记录行进行筛选;
 
         3、group by子句将数据划分为多个分组;
 
         4、使用聚集函数进行计算;
 
         5、使用having子句筛选分组;
 
         6、计算所有的表达式;

         7、使用order by对结果集进行排序。
 
5)、ALL/DISTINCT谓词
 
     ALL/DISTINCT谓词用于对返回的结果集重复行进行处理。在默认情况下为ALL,可省略。当我们需要去除查询结果集中的重复行时,使用谓词DSTINCT。
 
二、插入语句(INSERT)
 
插入语句的语法格式:
 
          INSERT [INTO]  <table>  [column]  VALUES [data_values]
 
         INSERT语句中的INTO为可选项,但为了语句的可读性,一般不建议省略。其中的列名也显示提供列名和不显示提供列名两种:当不显示提供列名时,我们插入的值必须与数据库中的列名值相对应,且不允许出现NULL值和默认值;当显示提供列名时,我们可以省略一些列名,但这些列名必须能设为NULL值和系统将其定义为默认值。
 
插入一个数据块得语法(INSERT INTO ....SELECT..):
 
     INSERT INTO <table>  [ <column_list>]  <SELECT.....>
 
三、更新语句(UPDATE)
 
更新语句的语法格式:
      UPDATE <table>
      SET <column=value>[<column=value>]
 
      [FROM <sources table(s)>]
 
      [ WHERE <condition>]
 
eg:UPDATE  store SET  stores.id='23' WHERE stores.id='12'  //将id为12的行的id值该为2.
 
四、删除语句(DELETE)
 
删除语句的语法格式:
     DELETE <table name>   [WHERE <condition>]
 
 eg:delete stores  where stores.id='12'     //删除id为12的行。
 
原创粉丝点击