MySQL数据库的查找

目录

MySQL中select的基本语法形式:

Select 属性列表

​编辑 * 可以表示所有字段,不能改变字段的排列顺序

desc 表名

 distinct去除重复数值

Where 条件表达式

 Where子句常用查询条件 

IN关键字

​编辑Between查询范围

​编辑Like匹配查询

 AND多条件查询

 OR多条件查询

LIMIT子句

 对查询结果排序

分组查询

集合函数

COUNT()用来统计记录的条数;

SUM()用来计算字段的值的总和;

AVG()用来计算字段的值的平均值:

MAX() 用来查询字段的最大值;

MIN()用来查询字段的最小值。

 正则表达式

“^”

“$”

“.”

‘[]’

[^字符集合]”

匹配指定字符串

“*”和“+”

‘{m}’或者’{m,n}’来指定字符串连续出现的次数

 算术运算符

比较运算符

 运算符优先级

 注释符

联合查询 : UNION

Order by 判断数量

嵌套查询

查询函数

系统用户名:system_user()

用户名:user()

当前用户名:current_user()

连接数据库用户名:session_user()

数据库名:database()

数据库版本:version()

数据库读取路径:@@basedir

MYSQL安装路径:@@char

查看当前系统版本:@@version_compile_os

其他相关函数1:

截取函数:

其它相关函数2:


MySQL中select的基本语法形式:

Select 属性列表

from 表名

[where 条件表达式1]

[group by 属性名1 [having 条件表达式2]]

[order by 属性名2 [asc | desc]]

Select xm,age from wa2;

 

 wa2表中查询ZHCJ大于90的记录,按照ZHCJ字段降序进行排序

Select xm,age,zhcj from wa2 where ahcj>90 order by zhcj desc;

 * 可以表示所有字段,不能改变字段的排列顺序

select * from wa2

查看数据库中的表结构

desc 表名

 distinct去除重复数值

select distinct 字段名 from 表名;

查询指定记录:

Where 条件表达式

select id,xm,ZHCJ,age from wa2 where id=1

 Where子句常用查询条件 

IN关键字

IN (元素1,元素2....元素n)

Between查询范围

BETWEEN 取值1 AND 取值2

Like匹配查询

like ‘字符串‘

使用like匹配带有通配符‘%’的字符串‘王%

使用like匹配带有通配符‘_’的字符串‘王_

下划线的用途与%一样,但下划线只匹配单个字符而不是多个字符

 AND多条件查询

条件表达式1 AND 条件表达式2

 OR多条件查询

条件表达式1 OR 条件表达式2

AND与OR

当AND与OR一起使用时,AND要比OR先运算

LIMIT子句

limit n,m

n:开始位置

m:要检索的行数

 

 

 对查询结果排序

ORDER BY 属性名 [ASC | DESC]

ASC:升序(默认升序)

DESC:降序

 补充 代码后加 limit 1 即可求出最大/最小值

分组查询

GROUP BY 属性名 [having 条件表达式]

集合函数

COUNT()用来统计记录的条数;

SUM()用来计算字段的值的总和;

AVG()用来计算字段的值的平均值:

MAX() 用来查询字段的最大值;

MIN()用来查询字段的最小值。

 正则表达式

属性名 REGEXP '匹配方式’

“^”

“^”查询以特定字符或者字符串开头的记录

“$

$”查询以特定字符或者字符串结尾的记录

.”

.”匹配字符串中的任意一个字符。

注意

.”只能用于regexp关键字进行匹配

“_”不能用于regexp关键字进行匹配

[]’

[..]字符集合。匹配所包含的任意一个字符。

[^字符集合]”

匹配指定字符以外的字符

匹配指定字符串

需要用符号“|”隔开。只要匹配这些字符串中的任意一个即可

*”和“+”

“+”:至少表示一个字符

“*”:可以表示0个字符

{m}’或者’{m,n}’来指定字符串连续出现的次数

{m}:m是一个非负整数。匹配确定的 m 次。

{m,n}:m 和 n 均为非负整数,其中m <= n。

 算术运算符

 

 

比较运算符

大于、小于、

等于、不等于,主要用于数值

的比较和字符串的匹配上

 

 

 运算符优先级

 注释符

1、“#”,表示单行注释,语法“#注释内容”

2、“-- ”,表示单行注释,语法“-- 注释内容”

3、“/**/”,表示多行注释,语法“/*注释内容*/”

联合查询 : UNION

select * from venus1

union

select * from venus2

Order by 判断数量

嵌套查询

[NOT]IN、ANY、ALL、[NOT]EXISTS

1.子查询

2.子查询可以继续嵌套

3.子查询中不可以使用order by子句,只对最后结果排序

4.子查询要用括号括起来

查询函数

系统用户名:system_user()

查询语句:

select system_user();

select user from mysql.user

户名:user()

查询语句:

select user();

当前用户名:current_user()

查询语句:

current_date()当前日期

selectcurrent_user();

连接数据库用户名:session_user()

查询语句:

Select session_user();

 

数据库名:database()

查询语句:

select database();

数据库版本:version()

查询语句:

select version();

数据库读取路径:@@basedir

查询语句:

show variables like '%basedir%';

MYSQL安装路径:@@char

查询语句:

show variables like "%char%";

查看当前系统版本:@@version_compile_os

查询语句:

select @@version_compile_os;

其他相关函数1:

left(s,n) #返回字符串s最左边的字符n是个数

right(s,n)#返回字符串s最右边的字符

substr(s,n,len)mid(s,n,len)

 #截取字符串s的第n个字符,且截取长度为len

lpad(string,length,’str2’)rpad(string,length,’str’)

#string:需要填充的字符串length:填充之后的总长度str:填充字符串,默认空格

Locate(str,str1) locate(str,str1,pos) locate(a,locala,5)

#返回str在str1中第一次出现的位置 pos--从pos位置开始检索

insert(str1,pos,len,str2)

#str1:指定字符串 pos:开始被替换的位置 len:被替换字符串长度 str2:新字符串

instr(field, str)

#返回field字符串中出现str字符串的位置

position(str1 in str2)

#返回字符串中第一次出现的子字符串的位置,若没有返回0

判断当前用户的第一/最后字符

查询语句:

select left(user(),1)=’r’;

select right(user(),1)=’r’;

截取函数:

查询语句:

select substr(database(),2,1)=’e’;

select mid(database(),2,1)=’e’;

其它相关函数2

concat(str1, str2,...) select concat(“

abc”,NULL,”fg”) NULL

#返回结果为连接参数产生的字符串

concat_ws(separator, str1, str2, ...) select concat_ws(“+”,”123”,”345”) 123+345

#用第一个参数作为连接符号将字符串连接

group_concat(str1)

#将group by产生的同一个分组中的值连接起来,返回一个字符串

if(expr,v1,v2) select if(1<2,1,0);

#expr:条件 满足条件返回V1,不满足条件返回V2

case when expr then v1 else v2 end

#满足expr,则返回V1,不满足则返回V2

sleep(N)

#执行select sleep(N)可以让此语句运行N秒

oct() #转换为8进制 ord() 返回第一个字符串的第一个字符的ascii值

hex() #转换为16进制

char() #转换为字符串

ascii() #ASCII值

数据库函数

infomation_schema

information_schema 用于存储数据库元数据(关于数据的数据),例如数据库名、表名、列的数据类

型、访问权限等。

infomation_schema.schemata infomation_schema.tables infomation_schema.cloumns

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值