1.SQL SELECT语句
根据表查询某一列或多列数据
select 列名称 from 表名称
以及,根据表查询所有列数据
select * from 表名称
提示:星号(*)是选取所有列的快捷方式。
2.SQL SELECT DISTINCT语句
在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。
关键词 distinct用于返回唯一不同的值。
select distinct 列名称 from 表名称
3.SQL WHERE子句
条件查询语句,将 where子句添加到 select语句
select 列名称 from 表名称 where 列 运算符 值
操作符 | 描述 |
= | 等于 |
<>或!= | 不等于 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
between | 在某个范围内 |
like | 搜索某种模式 |
4.SQL AND & OR 运算符
and 和 or 可在 where子语句中把两个或多个条件结合起来。
如果第一个条件和第二个条件都成立,则 and 运算符显示一条记录。
如果第一个条件和第二个条件中只要有一个成立,则 or 运算符显示一条记录。
我们也可以把 and 和 or 结合起来(使用圆括号来组成复杂的表达式):
例:
select * from 表名 where (条件1 or 条件2) and 条件3
5.SQL ORDER BY 子句
order by 语句用于对结果集进行排序。
order by 语句用于根据指定的列对结果集进行排序。
order by 语句默认按照升序对记录进行排序。也可用asc关键字。
select 列名称 from 表名 order by 列名称
如果您希望按照降序对记录进行排序,可以使用 desc关键字。
select 列名称 from 表名 order by 列名称 desc
6.SQL INSERT INTO 语句
insert into 语句用于向表格中插入新的行。
insert into 表名称 values(值1, 值2,....)
我们也可以指定所要插入数据的列:
insert into 表名称 (列1, 列2,...) values(值1, 值2,....)
7.SQL UPDATE 语句
update 语句用于修改表中的数据。
update 表名称 set 列名称 = 新值 where 列名称 = 某值
更新某一行中的若干列
update 表名称 set 列名称 = 新值 , 列名称1=新值1 where 列名称 = 某值
8.SQL DELETE 语句
delete语句用于删除表中的行。
delete from 表名称 where 列名称 = 值
可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:
delete * from 表名称
9.SQL TOP 子句
TOP 子句用于规定要返回的记录的数目。
对于拥有数千条记录的大型表来说,TOP 子句是非常有用的。
注释:并非所有的数据库系统都支持 TOP 子句。
select 列名称 from 表名 where ROWNUM <= number
展示该表的前两行内容
select top 2 * from 表名
现在,我们希望从表中选取 50% 的记录。
select top 50 percent * from 表名
10.SQL LIKE 操作符
like操作符用于在 where子句中搜索列中的指定模式。
提示:"%" 可用于定义通配符(模式中缺少的字母)。
搜索列表中列表中带有N的数值,N可替换。
select 列明称 from 表名 where 列名称 like 'N%'
11.SQL 通配符
在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。
SQL 通配符必须与 LIKE 运算符一起使用。
通配符 | 描述 |
---|---|
% | 替代一个或多个字符 |
_ | 仅替代一个字符 |
[charlist] | 字符列中的任何单一字符 |
[^charlist]或者[!charlist] | 不在字符列中的任何单一字符 |
1.搜索该表中该列名称以Ne开始的数据
select * from 表名 where 列名称 like 'Ne%'
2.搜索该表中该列名称中包含lond的数据
select * from 表名 where 列名称 like '%lond%'
3.搜索该表中该列名称中第一个字符之后是 “eorge” 的数据
select * from 表名 where 列名称 like '_eorge'
4.搜索该表中该列名称以c开头,以r为第三字符,以er为结尾字符的数据
select * from 表名 where 列名称 like 'C_r_er'
5.搜索该表中该列名称以A、L、N开头的数据
select * from 表名 where 列名称 like '[ALN]%'
6搜索该表中该列不以A、L、N开头的数据
select * from 表名 where 列名称 like '[!ALN]%'
12.SQL IN 操作符
IN 操作符允许我们在 where子句中规定多个值。
从该表中选取该列名称为 value1和 value2的数据
select * from 表名 where 列名称 IN (value1,value2)
13.SQL BETWEEN 操作符
between操作符在 where子句中使用,作用是选取介于两个值之间的数据范围。
1.搜索该表中该列名称以字母顺序显示介于 "value1 "(包括)和 “value2”(不包括)之间的数据
select* from 表名 where 列名称 between 'value1 ' and 'value2 '
2.搜索该表中该列名称以字母顺序显示不介于 "value1 "(包括)和 “value2”(不包括)之间的数据
select * from 表名 where 列名称 not between 'value1 ' and 'value2 '
14.SQL Alias(别名)
通过使用 SQL,可以为列名称和表名称指定别名(Alias)。
1.使用表名称别名
select * from 表名 as 表别名
2.使用一个列名别名
select 列名称1 as 列别名称1, 列名称2 as 列别名称2 from 表名
15.SQL JOIN
SQL join 用于根据两个或多个表中的列之间的关系,从这些表中查询数据。
法一:
select 表1.列1, 表1.列2, 表2.列1 from 表1, 表2 where 表1.主键 = 表2.主键
法二:
select 表1.列1, 表1.列2, 表2.列1 from 表1 inner join 表2 on 表1.主键= 表2.主键
下面列出了您可以使用的 JOIN 类型,以及它们之间的差异。
JOIN: 如果表中有至少一个匹配,则返回行
LEFT JOIN: 即使右表中没有匹配,也从左表返回所有的行
RIGHT JOIN: 即使左表中没有匹配,也从右表返回所有的行
FULL JOIN: 只要其中一个表中存在匹配,就返回行
16.常用sql语句
1.创建数据库:Create database database_name
2.删除数据库:drop database database_name
3.添加/插入:insert into table values(字段1,字段2)
4.删除表:delete from 表名 where 条件表达式
5.修改:update 表名 set 表达式 where 字段=值
6.模糊查询:select* from 表名 where name=‘list’ like ‘%_n%’
7.查询分页展示:select* from 表名 where name=‘list’ like ‘%_n%’ limit 0,3
8.查看数据库:show databases
9.查看表:show tables