gpt4 book ai didi

php - MySQL 数据处理。如何从数据库获取斜杠后面的值

转载 作者:行者123 更新时间:2023-11-29 23:32:36 30 4
gpt4 key购买 nike

我正在处理有关城镇和城镇内区域的 MySQL 数据库中的一些数据。

数据库看起来像这样

ID | NAME
1 | Manchester
2 | Manchester/North
3 | Manchester/South
4 | Manchester/East
5 | Manchester/West

我尝试过一个 PHP 脚本,它只能查找 / 之后的单词,并根据计数变量 $j 生成一个数字,但到目前为止,它不工作。稍后我计划将其写入变量 $data 所在的 JSON 文件中。

我的理想输出是北东南西 4

这是脚本

$j=0;
foreach($data->objects->layer->geometries as &$h)
{
foreach($result as $row)
{
preg_match("/[^\/]+$/", $row['name'], $matches); // Town/Region
$no_slash = $matches[0]; // Region
if(strtolower($h->properties->name) == $no_slash)
{
$h->properties->id = $row['id'];
$j++;

echo $j . " " . $no_slash . "<br />";
}
}
}

echo "Number of matches: " . $j;

我目前的输出是匹配数:0有人知道为什么吗?

最佳答案

如果我正确理解你的问题,你可以使用这个 MySQL 查询:

SELECT
SUBSTRING_INDEX(NAME, '/', 1) AS city,
GROUP_CONCAT(SUBSTRING_INDEX(NAME, '/', -1) SEPARATOR ' ') AS districts,
COUNT(*) AS cnt
FROM
tablename
WHERE
NAME like '%/%'
GROUP BY
city

请参阅 fiddle here .

关于php - MySQL 数据处理。如何从数据库获取斜杠后面的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26489420/

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