mysql拆分["地址1","地址2"]数组进行统计
时间: 2023-07-19 22:18:27 浏览: 143
如果你的MySQL版本支持JSON函数,可以将地址数组转换成JSON格式,然后使用JSON函数进行拆分和统计。
假设你的表名为`addresses`,包含一个名为`address_array`的列,存储了地址数组。
首先,使用JSON_ARRAY函数将地址数组转换成JSON格式:
```
SELECT JSON_ARRAY("地址1", "地址2") AS json_array;
```
输出结果为:
```
["地址1", "地址2"]
```
然后,可以使用JSON_TABLE函数将JSON格式的地址数组拆分成多行,并进行统计。
示例代码如下:
```
SELECT address, COUNT(*) AS count
FROM addresses, JSON_TABLE(address_array, '$[*]' COLUMNS (address VARCHAR(50) PATH '$')) AS jt
GROUP BY address;
```
输出结果为:
```
+--------+-------+
| address| count |
+--------+-------+
| 地址1 | 1 |
| 地址2 | 1 |
+--------+-------+
```
如果你的MySQL版本不支持JSON函数,可以考虑使用正则表达式函数进行拆分和统计。不过这种方式可能比较复杂和不稳定。
阅读全文