MySQL总结

这篇博客介绍了MySQL中的一些核心操作,包括使用USER()和DATABASE()函数获取登录信息和当前数据库,MD5()和PASSWORD()函数进行密码加密,以及IF()和IFNULL()的流程控制。此外,还讲解了LIMIT进行分页查询的方法,以及如何进行多表查询和自连接查询,以实现更复杂的数据库操作。
摘要由CSDN通过智能技术生成

1.加密函数:

USER() 可以查看登录到mysql的有哪些用户,以及登录的IP
SELECT USER() FROM DUAL;

DATABASE() 查询当前使用数据库名称
SELECT DATABASE() FROM DUAL;

MD5(str) 为字符串算出一个 MD5 32的字符串,(用户密码)加密
SELECT LENGTH(MD5('mima')) FROM DUAL;

PASSWORD(str) 加密函数,MySQL数据库的用户密码就是 PASSWORD函数加密
SELECT PASSWORD('mima') FROM DUAL;

2.流程控制语句:判断是否为null,要使用 is null,判断不为空,使用 is not null。

IF(表达式1,表达式2,表达式3) 如果表达式1为true,则返回表达式2,否则返回表达式3
SELECT IF(TRUE,'北京','上海') FROM DUAL;

IFNULL(表达式1,表达式2) 如果表达式1不为null,则返回表达式1,否则返回表达式2
SELECT IFNULL(NULL,'hi') FROM DUAL;

SELECT CASE WHEN 表达式1 THEN 表达式2 WHEN 表达式3 THEN 表达式4 ELSE 表达式5 END;
如果表达式1为true,则返回表达式2,如果表达式2为true,返回表达式4,否则返回表达式5。
SELECT CASE 
    WHEN TRUE THEN 'hi' 
    WHEN FALSE THEN 'hello'
    ELSE 'nihao' END;

3.分页查询:

基本语法:select...limit start,rows      表示从start+1 行开始取,取出rows行,start从0开始计算limit 每页显示记录数 * (第几页-1),每页显示记录数。

SELECT * FROM emp
    ORDER BY empno
    LIMIT 0,3;
SELECT * FROM emp
    ORDER BY empno
    LIMIT 3,3;
SELECT * FROM emp
    ORDER BY empno
    LIMIT 6,3;

4.多表查询是指基于两个和两个以上的表查询。
笛卡尔集的列数为每个表的列数之和,笛卡尔集的行数为每个表的行数相乘。当我们需要指定显示某个表的列时,需要 表.列名       多表查询的条件不能少于 表的个数-1,否则会出现笛卡尔集。

SELECT ename,sal,dname,emp.deptno
    FROM emp,dept
    WHERE emp.deptno = dept.deptno AND emp.deptno=10

5.自连接是指在同一张表的连接查询,把同一张表当做两张表使用,需要给表取别名(别名取名方法:表名 表别名)。

SELECT worker.ename AS '职员名',boss.ename AS '上级名'
    FROM emp worker,emp boss
    WHERE worker.mar =boss.empno;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值