mysql - 在 SQL 中分解和计数

标签 mysql sql

我在 TableView 中有列:165,75,44,458,458,42,45 此列包含查看链接的 user_id。 我想通过逗号分隔符将其分解并计算 ids

我试过了,但它只计算所有字符。

SQL:

SELECT LENGTH(views) FROM questions WHERE question_id=1;

这是我想用SQL做的PHP版本

$viewers_ids  = "165,75,44,458,458,42,45";
$num_of_views = count(array_filter(explode(",", $viewers_ids)));

最佳答案

你可以数逗号:

select 1 + length(views) - length(replace(views, ',', ''))

也就是说,您应该修复您的数据结构。您不应该在一个字符串列中存储多个数字 ID——这在很多方面都是错误的。您应该使用联结/关联表。

关于mysql - 在 SQL 中分解和计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54894151/

相关文章:

mysql 不同的不工作

mysql - 在具有预定义值的两个日期属性之间进行选择

mysql - 设置成员(member)搜索说明

MySQL InnoDB 不同数据库之间的外键

mysql - 想要在不使用应用程序的情况下将我的外部 mysql 数据库连接到 Shopify

php - 尝试执行条件更新时 MySQL 或 PHP 语法疏忽

c# - 协助在 C# 中连接到 MYSQL 表

ios - 如何在通过线程执行工作负载时为微调器设置动画

sql - Postgresql 包含在 where 子句中

sql - MySQL,从一个字符串中查找另一个字符串中的单词