我想在我的sql表列“teams”=“11”中找到每行的“id”
但是,“团队”以这种格式存储:
1,2,3,4,5,11,20
1
1,3,4
11,34
我尝试过使用“in”查询,但无效。
$query = "SELECT u_id FROM #__bl_teamcord WHERE (11 IN (teams))";
$db->setQuery($query);
$remail = $db->loadObjectList();
答案 0 :(得分:4)
您可以使用:
SELECT u_id FROM #__bl_teamcord WHERE FIND_IN_SET('11',teams)
但是,如果这些表包含大量数据或性能至关重要,您可能需要考虑将数据规范化为单独的表,而不是在每行中使用逗号分隔列表。
答案 1 :(得分:0)
你不能有效地做到这一点,但如果你坚持使用正则表达式。我建议加入一个团队表,每个团队都排成一排。