gpt4 book ai didi

mysql - mysql 中的计数和不同(表中的逗号分隔数据)

转载 作者:太空宇宙 更新时间:2023-11-03 10:42:29 25 4
gpt4 key购买 nike

我正在尝试从 mysql 数据库中获取详细信息。

我的表有位置字段。数据如下

Location
India
UK,Finland, India
USA, NZ, AUS, Spain

我正在尝试获取每个位置的计数。

select count(distinct location) from posting

这是我目前出于测试目的而编写的查询。它返回我的计数。

我想获取如下详细信息。

India -2
UK - 1
Finland -1
USA - 1

类似的东西。

注意 请忽略破折号,因为这只是为了向您展示我想要的。

数据库不好请多多指教

最佳答案

您不应在单个列中存储多个值。带分隔符的字符串不是在 SQL 中存储值的正确方法。正确的方法是联结表。

如果我假设您有位置列表,那么您可以:

select l.location, count(*)
from location l join
posting p
on find_in_set(l.location, p.location) > 0;

如果您没有这样的表,我建议您先专注于修复数据结构,而不是尝试让这样的查询起作用。

关于mysql - mysql 中的计数和不同(表中的逗号分隔数据),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35973709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com