我正在使用的数据库有两个与序列化(复杂)数据链接的表。第一个表是:
Table1
CarID Car
1 BMW
2 Porsche
3 Lexus
第二张表是:
Table2
ColorID Value
1 a:@!"1",asf@"2"
2 b:af"3", asf"1"
3 a:2f"1",asfl@"3"
双引号内的数字是指表1中的CarID。这很复杂,但它是软件的一部分,我无法更改数据库结构。
我需要做的是创建一个查询,计算表 2 中每辆汽车的链接次数。在这种情况下,输出将是:
BMW - 3
Porsche - 1
Lexus - 2
是否有查询可以执行此操作?
最佳答案
如果你真的不能改变你的数据结构......你可以使用这样的查询:
SELECT
Table1.CarID,
Table1.Car,
COUNT(*)
FROM
Table1 INNER JOIN Table2
ON Table2.Value LIKE CONCAT('%"', Table1.CarID, '"%')
GROUP BY
Table1.CarID,
Table1.Car
请参阅 fiddle here .
关于mysql - 使用 mysql 计算和连接序列化数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18474254/