2021年8月23日

#展示所有的数据,开发中一般不用效率低
mysql> select * from person;
#按照字段进行查询 select 字段1,字段2,字段3  from   表名
mysql> select name,age,info from person;
#按照字段进行查询,还可以对字段进行起别名的操作。以后用的很多
#语法格式:  select 字段1 as 字段1的别名, 字段2 as 字段2的别名... from 表名
mysql> select name as "姓名", age as "年龄", info as "详细信息" from person;

#可以对数据进行约束查询 运算符
#>   <   >=    <=  !=   =  运算符
#语法格式:select  * from 表名 where 字段 运算符  值
#找出年龄大于50岁的人
mysql> select * from person where age > 50;
#找出年龄小于30岁的人
mysql> select * from person where age < 30;
+------+--------+------+------+----------+-------------+
| id   | name   | sex  | age  | salary   | info        |
+------+--------+------+------+----------+-------------+
|    5 | 乃亮   |    1 |   27 | 78799.89 | bhjsnjsnjjn |
|    7 | 羽凡   |    1 |   17 |  8799.89 | bhjsnjsnjjn |
+------+--------+------+------+----------+-------------+
2 rows in set (0.00 sec)
#找出年龄w为 17的人
mysql> select * from person where age = 17;
+------+--------+------+------+---------+-------------+
| id   | name   | sex  | age  | salary  | info        |
+------+--------+------+------+---------+-------------+
|    7 | 羽凡   |    1 |   17 | 8799.89 | bhjsnjsnjjn |
+------+--------+------+------+---------+-------------+

#使用逻辑运算符
#and  or
#语法格式:select * from 表名 where 条件1 and 条件2   两个条件都必须符合才能查询出来
#和java里面的逻辑与   &&
#语法格式:select * from 表名 where 条件1 or 条件2   两个条件都只要符合一个就能查询出来
#和java里面的逻辑或   ||
#找出来数据,年龄大于50岁的,并且薪资大于10000的人
mysql> select * from person where age>50 and salary>10000;
+------+--------+------+------+----------+-----------------+
| id   | name   | sex  | age  | salary   | info            |
+------+--------+------+------+----------+-----------------+
|    4 | 老邢   |    1 |   78 | 78889.89 | 猪头肉搞起      |
+------+--------+------+------+----------+-----------------+
1 row in set (0.01 sec)

mysql> select * from person where age>50 && salary>10000;
+------+--------+------+------+----------+-----------------+
| id   | name   | sex  | age  | salary   | info            |
+------+--------+------+------+----------+-----------------+
|    4 | 老邢   |    1 |   78 | 78889.89 | 猪头肉搞起      |
+------+--------+------+------+----------+-----------------+

#找出来年龄大于50的或者 薪资大于10000的
mysql> select * from person where age > 50 or salary >10000;
+------+--------+------+------+----------+-----------------+
| id   | name   | sex  | age  | salary   | info            |
+------+--------+------+------+----------+-----------------+
|    2 | 贝贝   |    0 |   67 |   789.89 | bhjsnjsnjjn     |
|    4 | 老邢   |    1 |   78 | 78889.89 | 猪头肉搞起      |
|    5 | 乃亮   |    1 |   27 | 78799.89 | bhjsnjsnjjn     |
|    6 | 大郎   |    1 |   57 |  8799.89 | bhjsnjsnjjn     |
+------+--------+------+------+----------+-----------------+
4 rows in set (0.00 sec)

mysql> select * from person where age > 50 || salary >10000;
+------+--------+------+------+----------+-----------------+
| id   | name   | sex  | age  | salary   | info            |
+------+--------+------+------+----------+-----------------+
|    2 | 贝贝   |    0 |   67 |   789.89 | bhjsnjsnjjn     |
|    4 | 老邢   |    1 |   78 | 78889.89 | 猪头肉搞起      |
|    5 | 乃亮   |    1 |   27 | 78799.89 | bhjsnjsnjjn     |
|    6 | 大郎   |    1 |   57 |  8799.89 | bhjsnjsnjjn     |
+------+--------+------+------+----------+-----------------+
4 rows in set (0.00 sec)



#排序  order by
#语法格式:select * from 表名  order by 字段  asc;升序  默认的
#语法格式:select * from 表名  order by 字段  desc;降序
#在最后可以加上  asc(升序)  或者是  desc(降序)
mysql> select * from person order by salary;#升序进行排的
+------+--------+------+------+----------+-----------------+
| id   | name   | sex  | age  | salary   | info            |
+------+--------+------+------+----------+-----------------+
|    2 | 贝贝   |    0 |   67 |   789.89 | bhjsnjsnjjn     |
|    1 | 宝强   |    0 |   47 |  7899.89 | bhjsnjsnjjn     |
|    6 | 大郎   |    1 |   57 |  8799.89 | bhjsnjsnjjn     |
|    7 | 羽凡   |    1 |   17 |  8799.89 | bhjsnjsnjjn     |
|    5 | 乃亮   |    1 |   27 | 78799.89 | bhjsnjsnjjn     |
|    4 | 老邢   |    1 |   78 | 78889.89 | 猪头肉搞起      |
+------+--------+------+------+----------+-----------------+
#降序排
mysql> select * from person order by salary desc;
+------+--------+------+------+----------+-----------------+
| id   | name   | sex  | age  | salary   | info            |
+------+--------+------+------+----------+-----------------+
|    4 | 老邢   |    1 |   78 | 78889.89 | 猪头肉搞起      |
|    5 | 乃亮   |    1 |   27 | 78799.89 | bhjsnjsnjjn     |
|    6 | 大郎   |    1 |   57 |  8799.89 | bhjsnjsnjjn     |
|    7 | 羽凡   |    1 |   17 |  8799.89 | bhjsnjsnjjn     |
|    1 | 宝强   |    0 |   47 |  7899.89 | bhjsnjsnjjn     |
|    2 | 贝贝   |    0 |   67 |   789.89 | bhjsnjsnjjn     |
+------+--------+------+------+----------+-----------------+
#先按照薪资进行降序排序,如果薪资相等的话,再按照年龄进行升序排序
mysql> select * from person order by salary desc, age asc;
+------+--------+------+------+----------+-----------------+
| id   | name   | sex  | age  | salary   | info            |
+------+--------+------+------+----------+-----------------+
|    4 | 老邢   |    1 |   78 | 78889.89 | 猪头肉搞起      |
|    5 | 乃亮   |    1 |   27 | 78799.89 | bhjsnjsnjjn     |
|    7 | 羽凡   |    1 |   17 |  8799.89 | bhjsnjsnjjn     |
|    6 | 大郎   |    1 |   57 |  8799.89 | bhjsnjsnjjn     |
|    1 | 宝强   |    0 |   47 |  7899.89 | bhjsnjsnjjn     |
|    2 | 贝贝   |    0 |   67 |   789.89 | bhjsnjsnjjn     |
+------+--------+------+------+----------+-----------------+
6 rows in set (0.00 sec)
#找出年龄大于30岁的并且按照salary进行降序进行排列
mysql> select * from person where age > 30 order by salary desc;
+------+--------+------+------+----------+-----------------+
| id   | name   | sex  | age  | salary   | info            |
+------+--------+------+------+----------+-----------------+
|    4 | 老邢   |    1 |   78 | 78889.89 | 猪头肉搞起      |
|    6 | 大郎   |    1 |   57 |  8799.89 | bhjsnjsnjjn     |
|    1 | 宝强   |    0 |   47 |  7899.89 | bhjsnjsnjjn     |
|    2 | 贝贝   |    0 |   67 |   789.89 | bhjsnjsnjjn     |
+------+--------+------+------+----------+-----------------+

posted @ 2021-08-23 20:03  张三疯321  阅读(55)  评论(0)    收藏  举报