mysql中類似indexOf的方法LOCATE()


 

     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
表名

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM