MYSQL查询语句 子查询 常见函数

两个以上select查询的语句就是子查询语句

出现的位置

1.where后:是把select查询出的结果当作另外一个select的条件值

2.from后:是把查询出的结果当做一个新表

例:

查询与项羽同一个部门的员工:

    先查询出项羽所在的部门编号,再根据编号查询同一部门的员工

select ename,deptno from emp where deptno = (select deptno from emp where ename='项羽');

查询30号以内大于2000的薪水的人(放在from后是把这个语句当成一个表)

select ename from (select ename,salary,deptno from emp where deptno=30) as s where s.salary > 2000;

查询工资大于程咬金的员工

select ename,salary from emp where salary > (select salary from emp where ename='程咬金');

常见函数

分类:字符串函数、数值函数、日期和时间函数、流程函数、其他函数(数据库、系统相关)

字符串函数:

concat(s1,s2,....,sn):将传入的字符串连成一个字符串,注意:任何与null连接的字符串结果都是null

insert(str,x,y,instr):把字符串转换成小写或者大写

lower(str)和uooer(str):把字符串转换成小写或者大写

lift(str,x)和right(str,x):分别返回字符串最左边或者最右边的x字符

ltrim(str)和rtrim(str):去除字符串当中最左侧和最右侧的空格

trim(str):去除字符串左右的空格

repeat(str,x):返回str重复x次结果

replace(str,a,b):用字符串b替换字符串str中所有出现的字符串a

substring(str,x,y):返回字符串str中的第x位置起y个字符串长度的字符


数值函数

abs(x):返回x的绝对值

ceil(x):小数部位零部分上取整,即向上取最近的整数(只要有一个小数点就进一)

floor(x):向下取整

mod(x,y):返回x/y的余数

rand():返回0~1的随机数

日期相关函数

curdate():返回当前日期(年月日)

curtime():返回当前的时间(时分秒)

now():返回当前的时间(年月日时间秒)

unix_timestamp():返回当前的时间戳

    时间戳:时间戳是指格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数。        

from_unixtime(unixtime):将一个时间戳转换成日期

year(),week(date),hour(date):返回当前是一年中哪一年,第几周,当前时间的小时

date_format(date,fmt):按字符串格式化日期date值

date_add(date,interval expr type):计算日期间隔

datedief(date1,date2):计算量日期相差天数

流程函数

if(value,t,f):如果value是真则返回t,否则返回f

ifnull(value,value2):如果value1不为空返回value1,否则返回value2

case when then end:判断

其他函数:

database():返回当前数据库

version():返回当前数据库版本

user():返回当前登录用户

password():对str进行加密,返回str的MD5值

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 引出 •请思考如下问题? –查询所有员工的每个月工资总和,平均工资? –查询工资最高和最低的工资是多少? –查询公...
    C_cole阅读 12,040评论 0 3
  • mysql数据库中 :database : 文件夹table : 数据表(数据文件) 进入mysqlmysql -...
    赋闲阅读 3,677评论 0 0
  • 1. select * from emp; 2. select empno, ename, job from em...
    海纳百川_4d26阅读 5,924评论 0 4
  • 5.多表查询 多表查询 目的:从多张表获取数据 前提:进行连接的多张表中有共同的列 等连接 通过两个表具有相同意义...
    乔震阅读 5,274评论 0 0
  • 今天早上在朋友圈看见一句话:“只要是我想要的,我必须要得到!”虽然只是简单的一句话,但是我看完,不寒而栗。 有目标...
    忆雪儿阅读 1,526评论 0 5

友情链接更多精彩内容