有些时候会看到<>,<=>这两个符号,其实就是<>(!=),<=>(=)
使用distinct一般直接跟在select后面,针对后面的所有字段去重
在使用count()的时候也可以在括号中加distinct,对被聚合的字段进行去重
#例如:count(distinct id)
between...and... #[ , ] 左闭右闭
order by 字段1 [asc|desc] , 字段2 [asc|desc] ,……
#排序规则:先按字段1排序完毕之后,在按字段二进行排序,……
#例如
INSERT INTO emp(NAME,gender,salary,join_date,dept_id) VALUES ('孙悟空','男',7200,'2013-02-24',1), ('猪八戒','男',3600,'2010-12-02',2), ('唐僧','男',9000,'2008-08-08',2), ('白骨精','女',5000,'2015-10-07',3), ('蜘蛛精','女',4500,'2011-03-14',1);
进行关联的时候(……join……on……)on后面的关联条件中含有重复数据
1、切换到mysql库中
use mysql;
2、查看MySQL的用户
#mysql库中有个user表 select user,host from user; #查看用户
3、创建用户
create user '用户名'@'主机名' identified by '密码'; #例如创建一个locuser用户限定在localhost(本机)上登陆,密码是123456 create user 'locuser'@'localhost' identified by '123456'; #如果报错显示你的密码过于简单,则需要关闭MySQL密码复杂性的验证即可
1、授权
grant 权限列表 on 数据库名.表名 to '用户名'@'主机名' [with grant option]; # with grant option 表示带上授权的功能 #例如 -- 将表db3.account的SELECT ,DELETE, UPDATE权限授予用户'lisi'@'%' GRANT SELECT ,DELETE, UPDATE ON db3.account TO 'lisi'@'%'; # % 代表任意主机 -- 给zhangsan用户所有权限 GRANT ALL ON *.* TO 'zhangsan'@'localhost'
2、刷新权限
flush privileges;
格式
revoke 权限列表 on 数据库名.表名 from '用户名'@'主机名';
格式
SET PASSWORD FOR '用户名'@'主机名' = PASSWORD('新密码');