EN我正在寻找如何创建一个insert命令,该命令使用case-when语法,其中使用子查询。我知道这听起来很复杂。
GROUP_CONCAT(CASE WHEN sc.score>85THEN stu.sname END ) AS 优秀, GROUP_CONCAT(CASE WHEN sc.score>70AND sc.score<=85THEN stu.sname END) AS 良好, GROUP_CONCAT(CASE WHEN sc.score6070THEN stu.sname END) AS 一般, GROUP_CONCAT(CASE WHEN sc.score<60THEN stu.sname END) AS 不及格 FROM c...
INSERT INTO `course` VALUES (5, 3, 'yuwen', 98); INSERT INTO `course` VALUES (6, 3, 'shuxue', 65); 3)需求 求:所有数学课程成绩 大于 语文课程成绩的学生的学号 最开始的想法是打算同过自连接的方式来解决,后来咨询了公司的同事,知道了可以case可以用来解决此问题。 a.使用case...when...将不...
INSERT INTO `t_demo` VALUES ('2', '李四', '22', '98'); INSERT INTO `t_demo` VALUES ('3', '王五', '20', '54'); INSERT INTO `t_demo` VALUES ('4', '赵甜', '22', '80');复制代码 3、使用mysql中的case when对表数据进行数据区分。 SELECT *, CASE WHEN t.num >= 85 THEN...
(b.money),0) money,shop,’type2’ type_test from bill b where b.type=2 group by b.shop union select IFNULL(sum(b.v1),0) money,shop,’card’ type_test from card_model b group by b.shop )a group by shop 这里利用case when 和别名type_test判断再取别名得到想要的结果,最后按shop...
CASE [col_name] WHEN [value1] THEN [result1]…ELSE [default] END 2. 搜索函数 CASE WHEN [expr] THEN [result1]…ELSE [default] END 1. 2. 3. 4. 这两种语法有什么区别呢? 简单函数 CASE [col_name] WHEN [value1] THEN [result1]…ELSE [default] END: 枚举这个字段所有可能的值* ...
一、简单CASE WHEN函数: CASE SCORE WHEN 'A' THEN '优' ELSE '不及格' END # 使用 IF 函数进行替换 IF(SCORE = 'A', '优', '不及格') 1. 2. 3. 4. THEN后边的值与ELSE后边的值类型应一致,否则会报错。 如下: CASE SCORE WHEN ‘A’ THEN ‘优’ ELSE 0 END’优’和0数据类型不一致则报...
END CASE 下面通过具体示例来说明case when这两种用法的区别:创建salary表,并向salary表中插入数据:# 创建salary表:create table salary(id int,name char(1),sex char(1),salary int )engine myisam charset utf8;#向salary表中插入数据:insert into salary values (1,'A','m',2500),(2,'B','f',...
insert into test_case2 values(1,'aa'); insert into test_case2 values(2,'bb'); insert into test_case2 values(3,'cc'); insert into test_case2 values(6,'ee'); commit; 4、两表关联,并编写case when的语句 select t.*, case when b.id is not null then '存在' else '不存在' end...
CREATE TABLE `tb` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `name` varchar(10) DEFAULT NULL, `subject` varchar(10) DEFAULT NULL, `score` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB; INSERT INTO `tb` (`id`, `name`, `subject`, `score`) VALUES ('1', '...