1. SQL的SELECT语句
1.1select
语句从表中查询数据.执行的结果被储存在一个结果中表中(成为结果集).
--从FROM 指定的[表], 查询出[所有的]数据.* 表示[所有列]
select * from 表名称
-- 例: select * from users
--从FROM 指定的[表], 查询出指定 列名称 的数据
select 列名称 from 表名称
-- 例: select name from users
查询users表中所有列的数据:
查询users表中username的数据:
1.2 注意:L语句的关键字大小写都可以.SELECT等于select,FROM等于from
在执行语句的时候,需要选择默认的数据库,双击选择指定的数据库即可
2. SQL的INSERT INTO语句
insert into
语句用于向数据中插入新的数据行
--注意: 列和值要一一对应,多个列和值之间用逗号分割
insert into users (username, password) values ('mz', '123456')
insert into 表名 set 字段1 = 值1,字段1 = 值1,字段1 = 值1;
insert into users (username, password) values ('mz', '123456')
insert into users set username = '刘大庆',password = '123456'
3.SQL的UPDATE语句
1.update
语句用于修改表中的数据.
--1.用于update 指定要更新那个表中的数据
--2.用于set 指定列对应的新值
--3.用where指定更新条件
update 表名称 set 列名称 = 新值 where 列名称 = 某值
2.案例:
- 多个被更新的列之间, 使用英文的逗号进行分隔
- where 后面跟着的是更新的条件
- 注意: 初学者经常忘记提供更新的 where 条件,这样会导致整张表的数据都被更新,一定要慎重
update users set password=654321 where id=4
update users set password=888888, status=1 where id=4
修改前:
修改后:
4.SQL的DELETE语句
1.delete
语句用于删除表中的数据的行
-- 从指定的表中,根据where条件,删除对应的数据行
delete from 表名称 where 列名称 = 值
注意:初学者经常忘记提供更新的 where 条件,这样会导致整张表的数据都被更新,一定要慎重
delete from users where id=4
5.WHERE 子句
1.WHERE
子句用于限定选择的标准。在 SELECT
、UPDATE
、DELETE
语句中,皆可使用 WHERE
子句来限定选择的标准
--查询语句中的 where 条件
select 列名称 from 表名称 where 列 运算符 值
--更新语句中的where
update 表名称 set 列=新值 where 列 运算符 值
--删除语句中的where条件
delete from 表名称 where 列 运算符 值
2.可以在where子句中使用的运算符
注意: 在某些版本的SQL中,运算符<>可以写成!=
3.可以通过where子句来限定select的查询条件
--查询id 为 1的所有用户
-- 查询 id 为 1 的所有用户
select * from users where id=5
-- 查询 id 大于 2 的所有用户
select * from users where id>2
--查询 username 不等于 admin 的所有用户
select * from users where username<>'zs'
select * from users where id=5
select * from users where id>2
select * from users where username<>'zs'
6.SQL和AND和OR运算符
AND
和OR
可在WHERE
子语句中把两个或多个条件结合起来AND
表示必须同时满足多个条件,相当于JavaScript
中的&&
运算符,例如if (a !== 10 && a !== 20)
OR
表示只要满足任意一个条件即可,相当于JavaScript
中的||
运算符,例如if(a !== 10 || a !== 20)
-- and
-- 使用 AND 来显示所有 status 为 0,并且 id 小于 3 的用户
select * from users where status=0 and id<3
-- or
-- 使用 OR 来显示所有 status 为 1,或者 username 为 zs 的用户
select * from users where status=0 or username='zs'
7.SQL 的 ORDER BY 子句
- `ORDER BY` 语句用于根据指定的列对结果集进行排序
- `ORDER BY` 语句默认按照升序对记录进行排序,`ASC` 关键字代表升序排序
- 如果您希望按照降序对记录进行排序,可以使用 `DESC` 关键字
-
ORDER BY
子句 - 升序排序对
users
表中的数据,按照status
字段进行升序排序-- 下面这两条 SQL 语句是等价的, -- 因为 order by 默认进行升序排序 -- 其中,ASC 关键字代表升序排序 -- select * from users order by status select * from users order by id asc
-
ORDER BY
子句 – 降序排序对 users 表中的数据,按照 id 字段进行降序排序
-- desc 代表降序排序 select * from users order by status desc
8. ORDER BY 子句 – 多重排序
-
对
users
表中的数据,先按照status
字段进行降序排序,再按照username
的字母顺序,进行升序排序 -
案例代码
select * from users order by status desc, username asc
9. SQL 的 COUNT(*) 函数
-
COUNT(*)
函数用于返回查询结果的总数据条数 -
案例语法
select count(*) from users
-- 查询 users 表中 status 为 0 的总数据条数 select count(*) from users where status=0
10. 使用 AS 为列设置别名
如果希望给查询出来的列名称设置别名,可以使用 AS
关键字
-- 将列名从 count(*) 修改为 total
select count(*) as total from users where status=0
-- 将列名 username 改为 uname, password 改为 upwd
select username as uname, password as upwd from users