MySQL查询

DQL:数据查询语言

 

别名关键字是AS,可以给字段起别名也可以给表起别名,就是起一个名字

select  字段  AS  别名  from  表  AS  别名

 

函数concat('内容',字段)就是给查询出来的结果字段加一个前缀

select  concat('内容',字段)from  表

 

去重distinct,去除查询出来的结果中重复的数据,只显示一条

select  distinct  字段  from  表

 

数据库中的表达式:文本值,列,Null,函数,计算表达式,系统变量......

select  表达式  from  表

 

where条件子句:

作用:检索数据中符合条件的值

字段(between  数字1  and  数字2)区间查询,查询该字段值为数字1到数字2的所有数据

select  字段  from  表  where  字段  between  数字1  and  数字2

模糊查询:比较符查询

 运算符  语法 描述 
 IS  NULL a  is  null  如果操作符为null,结果为真 
 IS  NOT  NULL  a  is  not  null  如果操作符不为null,结果为真 
 BETWEEN  a  between  b  and  c  若a在b和c之间,则结果为真 
 Like  a  like  b  SQL匹配,如果a匹配b,则结果为真 
 In  a  in (a1,a2,a3...)  假设a在a1,或者a2...其中的某一个值中,结果为真 

用于like查询的字符:%代表多个字符,_代表单个字符

 

联表查询:

 操作 描述 
 Inner  join 如果两个表至少有一个匹配就返回行 
 left  join  会返回左表中所有的值,即使右表中没有匹配 
 right  join  会返回右表中所有的值,即使左表中没有匹配 

join  on(判断的条件)     连接查询

where                                   等值查询

多表联查思路:
1、分析需求,分析查询的字段来自哪些表

2、确定使用哪种连接查询

3、确定交叉点和判断条件

自连接:自己的表和自己的表连接,核心就是一张表拆为两张一样的表

子查询:可以理解为嵌套查询,将查询到的结果作为另一条查询的条件

 

分页  limit  和排序  order by:

排序:升序  ASC,降序  DESC

排序语法:order  by  字段  排序方式

分页:缓解数据库压力

分页语法:limit  查询起始下标,页面显示总条数

 

分组  group  by  和过滤  having:

分组语法:group  by  字段

过滤:having和where一样,使用在分组下面 

 

常用函数:

1、数学运算:

  • 绝对值:ABS()
  • 向上取整:CEILING()
  • 向下取整:FLOOR()
  • 返回一个0~1之间的随机数:RAND()
  • 判断一个数的符号,0返回0,负数返回-1,正数返回1:SIGN()

2、字符串函数:

  • 返回字符串长度:CHAR_LENGTH()
  • 拼接字符串:CONCAT()
  • 转换成小写:LOWER()
  • 转换成大写:UPPER()
  • 反转字符串:REVERSE()

3、时间和日期函数:

  • 获取当前日期:CURRENT_DATE(),CURDATE()
  • 获取当前的时间:NOW()
  • 获取本地时间:LOCALTIME()
  • 获取系统时间:SYSDATE()

 

 常用聚合函数:

函数名称 描述 
 COUNT() 计数 
 SUN() 求和 
 AVG() 平均数 
 MAX() 最大值 
 MIN()  最小值 

 

MD5加密:

主要增强算法复杂度和不可逆性

MD5语法:MD5(字段或字符)

posted @ 2021-09-28 15:31  吃饭睡觉娶岳梅  阅读(18)  评论(0)    收藏  举报