SQL查询入门(上篇) 推荐收藏(3)

来源:asp之家 时间:2011-09-30 11:47:11 


由此我们可以看出,这几种运算符是有优先级的,优先级由大到小排列是比较运算符>于(And)>非(Or)

当然,运算符也可以通过小括号来改变优先级,对于上面那个表

对于不加括号时:

代码如下:


SELECT *
FROM [AdventureWorks].[HumanResources].[Department]
WHERE DepartmentID>=1 and DepartmentID<=3 and DepartmentID>=5 or DepartmentID<=7



加了括号改变运算顺序后: 

代码如下:


SELECT *
FROM [AdventureWorks].[HumanResources].[Department]
WHERE DepartmentID>=1 and DepartmentID<=3 and (DepartmentID>=5 or DepartmentID<=7)



很特别的NULL
假如在一个用户注册的表中,一些选填信息并不需要用户必须填写,则在数据库中保存为null,这些null值在利用上面where子句后的运算符时,有可能造成数据丢失,比如一个选填信息是性别(Gender),假设下面两条条件子句:

代码如下:


where Gender="M"
where NOT (Gender="M")


由于null值的存在,这两条语句返回的数据行加起来并不是整个表中的所有数据。所以,当将null值考虑在内时,where后面的条件子句拥有可能的值从真和假,增加为真,假,以及未知(null)。这些是我们在现实世界中想一些问题的时候可能的答案--真的,假的,我不知道。

所以我们如何在这种情况下不丢失数据呢,对于上面的例子来说,如何才能让整个表的数据不被丢失呢,这里必须将除了“真”,“假”以外的“未知”这个选项包含在内,SQL提供了IS NULL来表明未知这个选项:
where Gender IS NULL 将上面语句加入进去,则不会再丢失数据。

排序结果
上面的那些方法都是关于取出数据,而下面是关于将取出的子集进行排序。SQL通过Order by子句来进行排序,Order by子句是Sql查询语句的最后一个子句,也就是说Order by子句之后不能再加任何的子句了。

Order By子句分为升序(ASC)和降序(DESC),如果不指定升序或者降序,则默认为升序(由小到大),而Order by是根据排序依据的数据类型决定,分别为3种数据类型可以进行排序:
字符
数字
时间日期
字符按照字母表进行排序,数字根据数字大小排序,时间日期根据时间的先后进行排序。

标签:SQL查询入门
0
投稿

猜你喜欢

  • BP神经网络原理及Python实现代码

    2022-09-04 21:12:24
  • Python装饰器的练习题

    2023-12-07 13:11:48
  • python selenium自动化测试框架搭建的方法步骤

    2023-05-24 21:38:49
  • ant design vue 图片预览组件自定义样式

    2023-03-14 13:11:13
  • Mysql中的触发器定义与使用

    2024-01-26 10:37:45
  • Keras框架中的epoch、bacth、batch size、iteration使用介绍

    2023-10-13 13:15:13
  • MSSQL2005数据附加失败报错3456解决办法

    2012-11-30 19:56:59
  • Python 分支结构详解

    2021-03-17 01:43:06
  • JS小游戏之仙剑翻牌源码详解

    2024-04-17 09:42:04
  • Python3+django2.0+apache2+ubuntu14部署网站上线的方法

    2023-01-12 23:14:33
  • Python编程pygal绘图实例之XY线

    2021-02-17 10:42:10
  • django 多数据库及分库实现方式

    2024-01-14 01:13:00
  • 在Apache服务器上同时运行多个Django程序的方法

    2022-05-16 11:16:09
  • 基于Python编写简易的成语接龙游戏

    2022-08-26 02:15:05
  • JavaScript实现模仿桌面窗口的方法

    2024-04-19 10:16:56
  • 用户分类浅谈

    2009-09-27 12:14:00
  • ASP.NET与数据库相关技巧

    2024-01-26 19:45:23
  • mysql 5.7.20常用下载、安装和配置方法及简单操作技巧(解压版免安装)

    2024-01-15 17:21:24
  • Django连接本地mysql数据库(pycharm)的步骤

    2024-01-20 05:05:39
  • Python基于机器学习方法实现的电影推荐系统实例详解

    2023-09-13 17:13:41
  • asp之家 网络编程 m.aspxhome.com