SQL教程

数据库的SQL语句不区分大小写

查询表中所有数据
SELECT * FROM  表名

查询表中某些字段的数据
SELECT 要查的字段(多个使用逗号分隔) FROM 表名

去除字段中的重复数据    (DISTINCT)
SELECT DISTINCT 字段 FROM 表名

WHERE 子句用于过滤记录。
选取满足某一条件的的数据 (where)

SELECT * FROM 表名 WHERE name=“条件”

下面的运算符可以在 WHERE 子句中使用:

运算符
描述
=等于
<>不等于。注释:在 SQL 的一些版本中,该操作符可被写成 !=
>大于
<小于
>=大于等于
<=小于等于
BETWEEN在某个范围内
LIKE搜索某种模式
IN
指定针对某个列的多个可能值

逻辑运算

如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录。

如果第一个条件和第二个条件中只要有一个成立,则 OR 运算符显示一条记录

And:与 同时满足两个条件的值。(两个同时满足)

Select * from emp where sal > 2000 and sal < 3000;

查询 EMP 表中 SAL 列中大于 2000 小于 3000 的值。

Or:或 满足其中一个条件的值(满足其中之一)

Select * from emp where sal > 2000 or comm > 500;

查询 emp 表中 SAL 大于 2000 或 COMM 大于500的值。

Not:非 满足不包含该条件的值。(不满足条件的)

select * from emp where not sal > 1500;

查询EMP表中 sal 小于等于 1500 的值。

逻辑运算的优先级:

()    not        and         or

特殊条件

1.空值判断: is null

Select * from emp where comm is null;

查询 emp 表中 comm 列中的空值。

2.between and (在 之间的值)

Select * from emp where sal between 1500 and 3000;

查询 emp 表中 SAL 列中大于 1500 的小于 3000 的值。

注意:大于等于 1500 且小于等于 3000, 1500 为下限,3000 为上限,下限在前,上限在后,查询的范围包涵有上下限的值。

3.In(查询等于多个条件的数据)

Select * from emp where sal in (5000,3000,1500);

查询 EMP 表 SAL 列中等于 5000,3000,1500 的值。

4.like

Like模糊查询(查询包含条件的所有数据)

Select * from emp where ename like 'M%';

查询 EMP 表中 Ename 列中有 M 的值,M 为要查询内容中的模糊信息。

  • % 表示多个字值,_ 下划线表示一个字符;
  • M% : 为能配符,正则表达式,表示的意思为模糊查询信息为 M 开头的。
  • %M% : 表示查询包含M的所有内容。
  • %M_ : 表示查询以M在倒数第二位的所有内容。

ORDER BY 关键字用于对结果集按照一个列或者多个列进行排序。(默认按照升序,如果需要按照降序对记录进行排序,您可以使用 DESC 关键字
升序
SELECT * FROM 表名
ORDER BY 要排序的字段;
降序
SELECT * FROM 表名
ORDER BY 要排序的字段 DESC;

INSERT INTO 语句用于向表中插入新记录。
INSERT INTO 表名(或者指定字段)
VALUES (数据1,数据2,数据3,...);

UPDATE 语句用于更新表中已存在的记录

选中name=“菜鸟教程”的一行数据进行修改字段1和字段2的数据

UPDATE 表名

SET 字段1 = ' 5000 ' , 字段2 = ' USA '

WHERE 根据哪个字段 = ' 菜鸟教程 ' ;
DELETE 语句用于删除表中的记录。(当满足WHERE中的条件时进行删除)
DELETE FROM 表名
WHERE 条件1='百度' AND 条件2='CN';
SELECT LIMIT用于选取连续的一些数据,多用于分页

查询整张表中的前两条数据
SELECT * FROM 表名 LIMIT 2 ;
通配符

LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式(多用于模糊查询)
查询表中的name字段以G开头的所有数据( NOT 关键字,可以选取不匹配模式的记录。加于LIKE之前)

SELECT * FROM 表名

WHERE name LIKE 'G%';

REGEXPNOT REGEXP 运算符 (或 RLIKE 和 NOT RLIKE) 来操作正则表达式
选取 name 以 "G"、"F" 或 "s" 开始的所有网站:

SELECT * FROM 表名
WHERE name REGEXP '^[GFs]';

SQL 语句选取 name 以 A 到 H 字母开头的网站(REGEXP '^[A-H]')
SQL 语句选取 name 不以 A 到 H 字母开头的网站(REGEXP '^[^A-H]')

SELECT * FROM 表名
WHERE name REGEXP '^[A-H]';
IN 操作符允许您在 WHERE 子句中规定多个值。(字段的值包含XX,IN可以规定多个值,等于规定一个值)
SELECT * FROM 表名
WHERE 字段 IN ('value1','value2');
BETWEEN 操作符选取介于两个值之间的数据范围内的值。这些值可以是数值、文本或者日期(不介于两者之间在BETWEEN前面加NOT)
SELECT *
FROM 表名
WHERE column_name BETWEEN value1 AND value2;
INNER JOIN两张数据库表关联查询,合并字段(INNER JOIN 与 JOIN 是相同的)
INNER JOIN 关键字在表中存在至少一个匹配时返回行。

SQL INNER JOIN

SELECT 合并后要显示的所有字段
FROM table1
INNER JOIN table2
ON table1.column_name=table2.column_name;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值