扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
mysql DELIMITER // mysql CREATE PROCEDURE TestIfElse - ( - p_val INT - ) - BEGIN - IF (p_val = 1) THEN - SELECT '1' AS A; - ELSEIF (p_val = 2) THEN - SELECT '2' AS A; - ELSE - SELECT 'other' AS A; - END IF; - END// Query OK, 0 rows affected (0.05 sec) 上面是一个最简单的 mysql 的 IF / ELSEIF 的例子了...
创新互联建站专注于禹城企业网站建设,响应式网站建设,商城网站制作。禹城网站建设公司,为禹城等地区提供建站服务。全流程按需策划,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务
MySql中判断null可以用 is null 和 =
1、is null :仅仅可以判断null值,可读性较高,建议使用。
select * from base_user where username is null
2、= :既可以判断null值,也可以判断普通的数值,可读性较低。
select * from base_user where username = null
1、创建测试表,
create table test_person(id int, RMB int);
2、插入测试数据
insert into test_person values(1,180);
insert into test_person values(2,170);
insert into test_person values(3,290);
insert into test_person values(4,160);
insert into test_person values(5,299);
insert into test_person values(6,266);
insert into test_person values(7,155);
3、查询表中所有记录,select t.* from test_person t,
4、编写sql,汇总每个vip类型的用户数,
select vip_type, count(distinct id)
from (select case when RMB100 and RMB200 then 'VIP1' when RMB200 then 'VIP2' end as vip_type, id
from test_person) t
group by vip_type
1、mysql中创建测试表,create table test_user(id int, name varchar(20));
2、插入测试数据,
insert into test_user values(1001,'jack');
insert into test_user values(1002,'lucy');
insert into test_user values(1003,'mike');
insert into test_user values(1004,'john');
insert into test_user values(1005,'may');
3、查看表中所有数据,select * from test_user
4、编写sql,查询name列是否有jack名,
select * from test_user t where name = 'jack'
1.IF()函数的使用
IF(expr1,expr2,expr3),如果expr1的值为true,则返回expr2的值,如果expr1的值为false,则返回expr3的值。
SELECT IF(TRUE,'A','B'); -- 输出结果:A
SELECT IF(FALSE,'A','B'); -- 输出结果:B12
2.IFNULL()函数的使用
IFNULL(expr1,expr2),如果expr1的值为null,则返回expr2的值,如果expr1的值不为null,则返回expr1的值。
SELECT IFNULL(NULL,'B'); -- 输出结果:B
SELECT IFNULL('HELLO','B'); -- 输出结果:HELLO12
3.NULLIF()函数的使用
NULLIF(expr1,expr2),如果expr1=expr2成立,那么返回值为null,否则返回值为expr1的值。
SELECT NULLIF('A','A'); -- 输出结果:null
SELECT NULLIF('A','B'); -- 输出结果:A12
4.ISNULL()函数的使用
ISNULL(expr),如果expr的值为null,则返回1,如果expr1的值不为null,则返回0。
SELECT ISNULL(NULL); -- 输出结果:1
SELECT ISNULL('HELLO'); -- 输出结果:0
思路如下,分别将A与B,A与C进行关联,然后使用 union 进行连接,查询时,直接使用这个查询就可以了(可以建个视图,查询起来比较方便 ),如下:
select d.id, d.name
from (select A.id, B.name
from A, B
where A.id = B.id
and A.type = '教师'
union
select A.id, C.name
from A, C
where A.id = C.id
and A.type = '教室') d
where d.id = 123
有问题请追问,希望可以帮到你
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流