【SQL】单个表的查询
看到一本好书:名字叫做《数据库系统基础教程》 第三版 岳丽华等译
讲得很清楚,也不啰嗦。
这里是书中第六章的部分笔记:
一、常见用法:
1. AS 定义别名 可省略
2. 可以用加减乘除等表达式
3. 可以用常量
例
SELECT title, length * 0.016667 AS length, 'hrs.' AS inHours FROM Movies WHERE length > 100;
SELECT year time FROM movies;
二. 模式匹配 LIKE
%: 匹配任何长度的字符(包括0个)
_ : 匹配任何1个字符
单引号: '' 连写两个
转义字符:用 ESCAPE指定特定字符为转义字符 SQL中没有声明特别的转义字符,需要我们自己注明
例:
找到以 % 开始的title记录
SELECT title FROM Movies WHERE title LIKE '/%%' ESCAPE '/';
插入名为 '123的记录 里面有连续的3个引号,其中第一个是表示这是一个字符串,后面连续两个表示 ’ 这个字符。
INSERT INTO Movies VALUES('''',1982,105);
三、时间
日期:DATE '1981-09-23'
时间:TIME '13:00:02.5' 表示下午1点或2.5秒 24小时制
日期和时间: TIMESTAMP '1948-05-14 12:00:00'
四、 NULL
NULL 表示: 未知值、不适用的值、保留的值 (未知但确实存在)
对NULL 做加减乘除运算 , 仍为NULL, 如 0 * NULL 结果为 NULL
对NULL用 = , <> 做比较都是FALSE, NULL = NULL 和 NULL <> NULL 的值是UNKNOWN (在我的电脑上用Mysql显示的结果是NULL)
要比较是否为NULL,应该用 x IS NULL 或 x IS NOT NULL
五、 布尔值 UNKNOWN
TRUE 相当于 1
FALSE 相当于 0
UNKNOWN相当于 0.5
AND 与的规则: 取最小值
OR 的规则: 取最大值
NOT 的规则: 1 - x
那么 TRUE AND UNKNOWN -> UNKONWN
FALSE OR UNKNOWN -> UNKONWN
NOT UNKNOWN -> UNKONWN
例

六、排序
ORDER BY <list of attributes> (DESC/ASC) (默认ASC升序)
注意:降序是第一个最大,升序是第一个最小

【SQL】单个表的查询的更多相关文章
- SQL多表连接查询
SQL多表连接查询 本文主要列举两张和三张表来讲述多表连接查询. 新建两张表: 表1:student 截图如下: 表2:course 截图如下: (此时这样建表只是为了演示连接SQL语句,当然实际 ...
- 图解SQL多表关联查询
图解SQL多表关联查询 网上看了篇文章关于多表连接的,感觉很好,记录下来,以便日后自己学习 内连接 左连接 右连接 全外连接 1. 查两表关联列相等的数据 ...
- 避免SQL全表模糊查询查询 下载文件时-修改文件名字
避免SQL全表模糊查询查询 1.模糊查询效率很低: 原因:like本身效率就比较低,应该尽量避免查询条件使用like:对于like %...%(全模糊)这样的条件,是无法使用索引的,全表扫描自然效 ...
- SQL多表连接查询(详细实例)
转载博客:joeleo博客(http://www.xker.com/page/e2012/0708/117368.html) 本文主要列举两张和三张表来讲述多表连接查询. 新建两张表: 表1:stud ...
- SQL 两表关联查询 where 条件中等号两端字段顺序对效率的影响
现有两表A(大).B(小)作关联查询,SQL语句如下: SQL1:select * from A,B where A.id = B.id SQL2:select * from A,B where B. ...
- sql多表数据查询
有时候在sql遇到一次查询多张表的全部数据例如:创建一张虚拟表A ,表A中需要有表B和表C的全部数据(表B和表C并集,如图) 有两种方法一种是使用: 1):union,不过这种查询速度比较慢 /* B ...
- SQL多表连接查询(详细实例)(转)
http://www.xker.com/page/e2012/0708/117368.html select * from student,course where student.ID=course ...
- SQL多表连接查询(具体实例)
本文主要列举两张和三张表来讲述多表连接查询. 新建两张表: 表1:student 截图例如以下: 表2:course 截图例如以下: (此时这样建表仅仅是为了演示连接SQL语句.当然实际开发中我们 ...
- SQL多表合并查询结果
两表合并查询,并同时展示及分页SELECT a.* FROM ( ( SELECT punycode, `domain`, 'Success' AS state, add_time, AS refun ...
- SQL server 表信息查询
一.查看所有表的行数select a.name as '表名',b.rows as '表数据行数'from sysobjects a inner join sysindexes bon a.id = ...
随机推荐
- html页面简单制作示例
内有表格布局,具体见 链接: https://pan.baidu.com/s/1V7IcxQ5M-iXVdlzuf8bo-A 密码: 8dp8
- poj1094拓扑排序
Sorting It All Out Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 29539 Accepted: 10 ...
- 最快的Hash表算法
我们由一个简单的问题逐步入手:有一个庞大的字符串数组,然后给你一个单独的字符串,让你从这个数组中查找是否有这个字符串并找到它,你会怎么做?有一个方法最简单,老老实实从头查到尾,一个一个比较,直到找到为 ...
- PHPExcel 导出包含图片excel
<?php // 这里用的PHPExcel版本号为1.8.0 // 下载地址https://github.com/PHPOffice/PHPExcel 下载ZIP压缩包 // 下载后将Class ...
- redis-20180118
1.redis hash 100% 2.redis list 100% 3.redis sentinel 20%
- node和gulp实现前端工程自动化(附:gulp常用插件)
/** * 1. LESS编译 压缩 合并 * 2. JS合并 压缩 混淆 * 3. img复制 * 4. html压缩 */ // 在gulpfile中先载入gulp包,因为这个包提供了一些APIv ...
- c++ fstream用法(2)
一> #include "stdafx.h" #include<iostream> #include<string> #include<fstr ...
- java简单发送邮件
需要的jar 据说是: <dependency> <groupId>javax.mail</groupId> <artifactId>mail</ ...
- 51Nod 1118 机器人走方格--求逆元
(x/y) %mod =x*(y^(mod-2))%mod; 在算x,y的时候可以一直mod 来缩小 y^(mod-2)显然是个快速幂 #include <iostream> #inclu ...
- 【Foreign】染色 [LCT][线段树]
染色 Time Limit: 20 Sec Memory Limit: 256 MB Description Input Output Sample Input 13 0 1 0 2 1 11 1 ...