mysql中类似indexOf的方法LOCATE()

2018-06-17 23:14:52来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

 

     LOCATE(substr,str), LOCATE(substr,str,pos)

         第一个语法返回substr在字符串str 的第一个出现的位置。

         第二个语法返回子符串 substr 在字符串str,从pos处开始的第一次出现的位置。如果substr 不在str 中,则返回值为0 。

 

        问题:有多个科目,一个科目下多个多选题,每个题四种答案(ABCD),统计每个科目的每道题选择ABCD的个数

    

SELECT
sum(
CASE
WHEN (
LOCATE('A', 选项名) > 0
) THEN 1 ELSE
0
END
) as A,
sum(
CASE
WHEN (
LOCATE('B', 选项名) > 0
) THEN
1
ELSE
0
END
) as B,
sum(
CASE
WHEN (
LOCATE('C', 选项名) > 0
) THEN
1
ELSE
0
END
) as C,
sum(
CASE
WHEN (
LOCATE('D', 选项名) > 0
) THEN
1
ELSE
0
END
) as D
FROM
表名

 

 

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:mysql-7 数据检索(5)

下一篇:如何根据日志的输出内容来触发其它操作