SQL学习日记(一) 语法篇


目录
  • SQL学习日记-语法篇
    • 1. 常见的数据库对象
    • 2. select子句
    • 3. where 子句
    • 4. in运算符和 between.. and..运算符
    • 5. like运算符和 REGEXP运算符
    • 6. NULL运算符
    • 7. ORDER BY子句 和 LIMIT子句

SQL学习日记-语法篇


1. 常见的数据库对象

对象名 关键字 描述
表 table 存储数据的逻辑单元,以行和列存在,行是数据记录,列是(属性)字段
系统表(数据字典) 存放数据库相关信息的表 程序员只可查看,不可修改
约束 constraint 执行数据校验和保证数据完整性的规则
视图 view 一个或多个数据表(table)的逻辑显示,视图并不存储数据
索引 index 提高查询性能,相当于书的目录
函数 function 完成特定的计算,具有一个返回值
存储过程 procedure 完成一次完整的业务处理
触发器 trigger 事件监听器,特定事件发生后,完成相应数据处理

2. select子句

相关知识点->
select [列名|..]
from [表名|..]
where [条件..]
order by [条件..]
limit [数据个数]



--知识点1:
select ( 列名*10 ) + 10 AS '新列名'
//表示检索出某列元素乘10再加10的数据,并以新的列名展示出来
--知识点2:
select distinct 列名
//distinct关键字可以用来合并该列数据的重复项 

3. where 子句

相关知识点->
/*
--知识点1:
where子句用于设置检索条件
常用比较符
>
>=
<
<=
!= 或 <> 
--知识点2:
Mysql中日期的正规写法  '2000-03-14'


--知识点3:
逻辑运算符
AND OR NOT


*/

4. in运算符和 between.. and..运算符

相关知识点
--用例:
where city(属性字段) **IN** ('旧金山','上海','广州')
表示筛选出city属性是旧金山,上海或广州的数据
--用例:
where born(出生日期属性字段) **BETWEEN** '2000-03-14' ***AND*

5. like运算符和 REGEXP运算符

相关知识点
where word(单词属性字段) like 'b_y' OR word like 'g%'

where word单词属性字段)  RRGEXP ('b[a-w]y'|'^g')
/*
下划线_表示匹配单个字符
符号 %表示匹配多个字符
上面语句删选的word(单词属性字段)可以是boy,buy,go,girl

使用REGEXP运算符
 ^表示开头 
 $表示结尾
 | 相当于逻辑上的OR(或)
 [zd]表示需要匹配包含z或d任一字符
 [a-z]表示需要匹配a-z范围内任一字符
注:REGEXP:regular expression (正则表达式)


*/


6. NULL运算符

点击查看代码
NULL表示缺失,即某记录(record)不存在某属性(attribute)的数据

--用例:
where phone(电话属性字段) IS NULL
/*
表示电话信息不存在
*/

7. ORDER BY子句 和 LIMIT子句

点击查看代码
--用例:
ORDER BY bitrhday DESC
--按出生日期降序排序

--用例:
LIMIT 30
--展示前30条数据记录
LIMIT 10,3
--跳过前十条记录,展示接下来三条记录