假设我在MySQL中有这两个变量
SET data1 = "1,2,3,apple,4,5";
SET data2 = "apple,orange,5";如何获取出现在这两个变量上的项数?
发布于 2010-11-03 16:02:42
如果您确实需要在MySQL端执行此操作,您可以在其中创建存储过程(或存储函数):
但这种解决方案还远远谈不上优雅。将标签存储在单独的表中(如上所述,每行一个标签)是更可取的。
发布于 2010-11-03 00:16:12
没有办法分解列表并计算项目数量。在您的本地语言中处理值的唯一方法是:
php中的示例:
$values = mysql_result();
echo count(explode(",", $values));另一种方法是将所有标签放在一个单独的表中,并将它们连接到一个数据透视表中,然后您可以这样做:
select
count(*)
from
items
join
pivot on pivot.item_id = items.id
join
tags on pivot.tag_id = tags.id
where
item.id = {itemid}https://stackoverflow.com/questions/4079403
复制相似问题