色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

mysql根據逗號分隔字符串

江奕云2年前9瀏覽0評論

在數據庫中,有時需要根據逗號分隔字符串來進行查詢或統計。比如,我們有一個表格中存儲了用戶的興趣愛好,這些興趣愛好都是用逗號隔開的。現在我們要統計所有用戶中喜歡游泳的人數,該如何實現呢?

SELECT COUNT(*) FROM user WHERE hobby LIKE '%游泳%';

這樣做雖然可以查詢到喜歡游泳的用戶數量,但是并不能準確的判斷,可能存在一些用戶的興趣愛好里同時包含了“游泳”和“游戲”這兩個字,也會被計入進去。為了避免這種誤差,我們需要使用根據逗號分隔字符串的方法。

MySQL提供了一個函數 FIND_IN_SET(str, strlist),可以幫助我們查找字符串str在以逗號分隔的字符串strlist中的位置。如果找不到,則返回0,否則返回在strlist中的位置。

SELECT COUNT(*) FROM user WHERE FIND_IN_SET('游泳',hobby);

這樣做可以準確地統計喜歡游泳的用戶數量。

實際上,根據逗號分隔字符串的方法還可以用于根據多個條件進行查詢。比如,我們要查詢喜歡游泳且喜歡籃球的用戶數量:

SELECT COUNT(*) FROM user WHERE FIND_IN_SET('游泳',hobby) AND FIND_IN_SET('籃球',hobby);

可以看到,使用根據逗號分隔字符串的方法可以幫助我們更加準確地進行數據查詢和統計。