MySQL基础语法之判断语句的学习&&如何将检索数据的返回值赋值给变量,以及如何查看变量

本文介绍了MySQL中的条件函数如selectif和selectcase,展示了如何使用它们进行数据筛选、计数和变量赋值。同时讲解了如何通过groupby和if函数、字符串分割以及md5加密来处理数据。
摘要由CSDN通过智能技术生成

3月25日 条件函数

条件函数

select if(1<0,'正确','错误'); -- 1<0是条件,当条件正确后,则放回第一个值,正确,如果错误将返回第二个值错误
select ifnull(null,'hello world') -- 用于检测数据是否为空值,如果为空值,则返回hello world
-- 多个判断语句的组合
select case 
when 1>0   -- 1>0是条件
then '对的'  -- 如果上面的函数语句或判断式正确,则返回then后面对应的返回值
when 2>0
then '2确实大于0'  -- 同理从上到下执行
else '3>0'  -- else的做用就是保底,若前面的没有正确的,则会以else返回的值输出
end; -- end 收尾表示结束

​ 以上学习了条件判断函数,在MySQL检索数据,我们能否把数据的返回值赋值给某个制定的变量呢,当然可以,当我们学会了如何赋值后又可以做很多操作,是不是很有趣呢!!!

MySQL的赋值语法

-- 案例范文,提问:将男性和女性的人数分别统计出来
CREATE TABLE `user_submit` (
`id` int NOT NULL,
`device_id` int NOT NULL,
`profile` varchar(100) NOT NULL,
`blog_url` varchar(100) NOT NULL
);
INSERT INTO user_submit VALUES(1,2138,'180cm,75kg,27,male','http:/url/bisdgboy777');
INSERT INTO user_submit VALUES(1,3214,'165cm,45kg,26,female','http:/url/dkittycc');
INSERT INTO user_submit VALUES(1,6543,'178cm,65kg,25,male','http:/url/tigaer');
INSERT INTO user_submit VALUES(1,4321,'171cm,55kg,23,female','http:/url/uhsksd');
INSERT INTO user_submit VALUES(1,2131,'168cm,45kg,22,female','http:/url/sysdney');
select * from `user_submit`;

-- 方法一:赋值后运算
select @sum := 1 -- 这是一个简单的赋值,赋值后sum就等于1啦
select @sum  -- 这是查看变量的方法,此时返回值为1
-- @这个像一个铭牌,sum是写在铭牌上的名字,所以铭牌和名字都不能丢,:= 则是赋值符号
-- 平时当我们要做一些复杂的检索时并且需要用到函数的时候,则需要用用括号把建设的函数语句包裹起来
select @girl := (select count(id) from user_submit where profile like '%female')
-- 上面这个句子,是为了找到数据表第3列中包含female(女性)的人数
select @boy := (select count(id) from `user_sumbit`) - @girl; 
-- 上面这个句子,就是先在统计数据表中一共有多少人,然后再用总人数减去,女孩子的人生,即得男生的人生

-- 方法二: group by 的使用&&if函数的使用
select if(profile like '%female','女','男') as xb, -- as xb 则是把表头修改为xb
count(id) as number
from user_submit group by xb;  -- group by 是对搜索结果进行返回

-- 方法三: 字符串分割法
select substring_index(profile,',','-1')as gender,count(device_id) from user_submit
group by gender;
-- 数据表第3列的数据如下形式180cm,75kg,27,male是由逗号分割的,所以(profile,',','-1')就是以逗号分割为依据,然后锁定最后一个字符串male,然后实现区分男女后统计人数

加密函数

select md5('123456') -- md5 这个函数加密是不可逆反的过程
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值