select [all|distinct] [top (<expression>) [Percent] [with ties]] <column list>

[from <source table(s)/views>]

[where <restrictive condition>]

[group by <column name or expression using a column in the select list>]

[having <restrictive condition based on the group by results>]

[order by <column list>]

[[for xml {raw|auto|explicit|path [(<element>)]} [,xmldata] [,ELEMENTS] [,BINARY BASE 64] ]]

[OPTION (<QUERY HINT>,[,...N])]

上述语法结构非常复杂,一点一点逐步解析开。

基本的:

SELECT 列名称 FROM 表名称;

加上where子句后,变为:SELECT 列名称 FROM 表名称 WHERE 条件

这里详细的体现一下where子句的详细用法,如下:

运算符 示例用法 功能
=、>、<、>=、<=、<>、!=、!>、!< <column> = 'Bob' 在区分大小写的情况下,"ROMEY" <> "romey"。!=和<>都表示"不相等",!<、!>表示"不小于"和"不大于"
and、 or 、not <column1> = <column2> and
<column3> = <column4>
在语句中运算的顺序是not、and、or。如果要改变顺序可以用小括号。
 between  <column> between 1 and 5 第一个值在第二个值与第三个值之间时其值为true,其等价于A>=B AND A<=C。
指定的值可以为列名、变量或字面量。 
 like  <column> like "ROM%" 可使用%和_作为通配符。%表示可以代替任意长度的字符串。_表示可以代替任意的单个字符。[]符号用于指定
一个字符、字符串或范围,要求所匹配对象为他们中的任一个(如[a-c]表示a、b和c。而[ab]表示a或b)。^ 运算
符的作用与NOT运算符相同,表示下一个字符是要被排除的。
 in  <column> in ("a","b","345") 关键字in左边的表达式与其右边的任意值匹配时返回true。in常用于子查询。 
 all、any、some  <column|expression>
(比较运算符)
<ANY|SOME>(子查询)
子查询中全部值/任意值满足比较运算符(如<、>、=、>=)的条件时返回true。ALL指示表达式要匹配的 
结果集中的所有值。any和some功能相似,在表达式匹配结果集中的任意值时返回true。
 exists  exists(子查询) 子查询返回至少一行记录时为true。 

SQL SERVER 2012 第三章 T-SQL 基本SELECT语句用法,Where子句详细用法的更多相关文章

  1. SQL SERVER 2012 第三章 使用INSERT语句添加数据

    INSERT [TOP (<expression>) [PERCENT] [INTO] <tabular object>[(column list)][OUTPUT <o ...

  2. SQL SERVER 2012 第三章 T-SQL 基本语句 having子句

    SELECT ManagerID AS Manager,COUNT(*) AS Reports FROM Human.Resources.Employee2 WHERE EmployeeID !=5 ...

  3. SQL SERVER 2012 第三章 T-SQL 基本语句 group by 聚合函数

    select Name,salesPersonID From Sales.store where name between 'g' and 'j' and salespersonID > 283 ...

  4. Error after SQL Server 2012 installation: Login Failure for "SQL Server Integration Services 11.0" SSIS service

    When you install SQL Server 2012 and you try to connect to SSIS services, you cannot due to that the ...

  5. sql server 2012 分页/dapper/C#拼sql/免储存过程/简易

    sql server 2012新特性, 支持 OFFSET/FETCH分页, 就像mysql的limit, 比之前的各种top舒服多了,  看各位大佬们的测评文章说效率也是不相上下的, 有时候写个小工 ...

  6. sql server 2012 链接服务器不能链接sql server 2000的解决方案 ,

    本数据源来自 https://www.kafan.cn/edu/922556.html  目的为了备忘 把原来的sql server 2005直接装成了2012,然后在建立链接服务器链接一台sql s ...

  7. Microsoft SQL Server 2012 管理 (1): 安装配置SQL Server 重点

    SQL Server 可以在实例,数据库,列,查询分别指定排序规则 /* Module 1 - working with Clollations */ -- 1.1 Obtain the Instan ...

  8. sql server 2012中red gate的sql source control消失

    找到C:\ProgramData\Microsoft\SQL Server Management Studio\11.0\Addins路径,用notepad++打开RedGate.SIPFramewo ...

  9. SQL SERVER 2012 第五章 创建和修改数据表 の CREATE语句

    CREATE <object type> <object name> CREATE DATABASE <database name> 比较完整的语法列表: 日志文件 ...

随机推荐

  1. AJPFX总结Java 类与对象的初始化

    面试的时候,经常会遇到这样的笔试题:给你两个类的代码,它们之间是继承的关系,每个类里只有构造器方法和静态块,它们只包含一些简单的输出字符串到控制台的代码,然后让我们写出正确的输出结果.这实际上是在考察 ...

  2. asterisk-java ami 入门篇,连接与关闭服务器

    我选择的是通过AsteriskServer 来生成连接,因为后面要通过AsteriskServer来进行监听通话属性的改变. demo: AsteriskServer asteriskServer=n ...

  3. python游戏开发:pygame中的IO、数据

    一.python输入输出 1.输出 python一次可以打印多个变量,只要用一个逗号将每个变量隔开就可以了.比如: A = 123B = "ABC"C = 456D = " ...

  4. CREATE CAST - 定义一个用户定义的转换

    SYNOPSIS CREATE CAST (sourcetype AS targettype) WITH FUNCTION funcname (argtype) [ AS ASSIGNMENT | A ...

  5. bat运行当前路径下程序

    批处理中获取当前路径的方法可能有好几种,具体有几种我没有研究过,本文只是对其中的两种之间的差别进行简单说明 本文涉及的两个当前路径标示为:%cd%.%~dp0 注:我的系统是win7旗舰版,其它系统没 ...

  6. Webstorm 的 Tab 键调整缩进值

    两步即可,注意版本

  7. Python框架Django的入门

    本篇文章主要给大家介绍Django的入门知识:

  8. 04CSS文本字体及排版

    CSS文本字体 字体——font-family font-family:字体1,字体2,字体3,……:应用font-family属性可以一次定义多个字体,而在浏览器读取字体时, 会按照定义的先后顺序来 ...

  9. oracle分析函数之ratio_to_report

    ratio_to_report主要完成对百分比的计算,语法为ratio_to_report(exp) over()也就是根据over窗口函数的作用区间,求出作用区间中的单个值在整个区间的总值的比重比如 ...

  10. NOIP专题复习1 图论-最短路

    一.知识概述 今天我们要复习的内容是图论中的最短路算法,我们在这里讲3种最短路求法,分别是:floyd,dijkstra,spfa. 那么我们从几道例题来切入今天讲解的算法. 二.典型例题 1.热浪 ...