SQL 基础条件查询语句
语法:select 字段名1,字段名2 from 表名 [where 条件];
1、查询students表中的name,age
mysql> select name,age from students;
+--------+------+
| name | age |
+--------+------+
| zhangs | 21 |
| lis | 24 |
| jk | 24 |
| lo | 26 |
| io | 25 |
| jk | 24 |
+--------+------+
2、去重复查询distinct
mysql> select distinct name,age from students;
+--------+------+
| name | age |
+--------+------+
| zhangs | 21 |
| lis | 24 |
| jk | 24 |
| lo | 26 |
| io | 25 |
mysql> select distinct id,name,age from students where id=3;
+------+------+------+
| id | name | age |
+------+------+------+
| 3 | jk | 24 |
select distinct * from students; mysql的distinct可以对*使用
3、使用 and 和 or 进行 多条件查询
or和and 同时存在时,先算and的两边值,逻辑与先执行
mysql> select id,name,age from students where id>3 and age>25;
+------+------+------+
| id | name | age |
+------+------+------+
| 5 | lo | 26 |
+------+------+------+
mysql> select id,name,age from students where id>3 or age>25;
+------+------+------+
| id | name | age |
+------+------+------+
| 5 | lo | 26 |
| 6 | io | 25 |
+------+------+------+
select * from students where stname='zhangsan' and (age=21 or age=24);
注意and和or都是用的时候的逻辑关系
4、MySQL区分大小写查询:
Mysql查询默认是不区分大小写的
mysql> select name from students where name='jk';
+------+
| name |
+------+
| jk |
| jk |
| JK |
+------+
解决:
mysql> select * from students where binary name='jk';
+------+------+------+------+
| id | name | age | sex |
+------+------+------+------+
| 3 | jk | 24 | W |
| 3 | jk | 24 | W |
+------+------+------+------+
BINARY是类型转换运算符,它用来强制它后面的字符串为一个二进制字符串,可以理解为在字符串比较的时候区分大小写。
5、MySQL查询排序:
语法:select distinct 字段1,字段2 from 表名order by 字段名;
默认为升序 asc
mysql> select distinct id from students order by id asc; 升序
+------+
| id |
+------+
| 2 |
| 3 |
| 5 |
| 6 |
| 8 |
+------+
mysql> select distinct id from students order by id desc; 降序
+------+
| id |
+------+
| 8 |
| 6 |
| 5 |
| 3 |
| 2 |
+------+
关于MySQL命令帮助
mysql> help show;
会告诉我们很多使用方法和信息
mysql> help select;
Yum 安装mysql5.7的方法:
- CentOS 7版本下载rpm -Uvh https://repo.mysql.com//yum/mysql-5.7-community/el/7/x86_64/mysql57-community-release-el7-10.noarch.rpm
- Yum list
- yum -y install mysql-community-server
第一次通过# grep "password" /var/log/mysqld.log 命令获取MySQL的临时密码用该密码登录到服务端后,必须马上修改密码,不然操作查询时报错误,刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。
如果想设置简单密码,如下操作:
方法一:首先,修改validate_password_policy参数的值
mysql> set global validate_password_policy=0; #定义复杂度
mysql> set global validate_password_length=1; #定义长度 默认是8
mysql>set password for 'root'@'localhost'=password('123456');
mysql> flush privileges;
方法二:在/etc/my.cnf 可关闭密码强度审计插件,重启mysql服务
validate-password=ON/OFF/FORCE/FORCE_PLUS_PERMANENT: 决定是否使用该插件(及强制/永久强制使用)。