gpt4 book ai didi

mysql - 在WordPress数据库自定义表查询中按常用列名显示数据行

转载 作者:行者123 更新时间:2023-11-30 21:26:17 25 4
gpt4 key购买 nike

我需要按通用联赛名称对每一行进行分组。这是 WordPress 数据库自定义表查询。虽然在简单的 MySql 查询中我让它工作但通过 WP 数据库查询,我不知道。这就是我需要的。在这里您可以看到我们可以按联赛名称“意大利甲级联赛”和“英格兰 super 联赛”分组。

当前数据:

联盟名称 |事件名称

意大利甲级联赛

卡利亚里 - 热那亚


英格兰 super 联赛

南安普顿 - 伯恩茅斯


英格兰 super 联赛

莱斯特 - 热刺


英格兰 super 联赛

伯恩利 - 诺维奇

<---------------- XXX ------------!>

我需要这个来排序。所有赛事名称都在一个共同的联赛名称下,因为没有必要重复联赛名称。

我需要这样展示的数据:

联盟名称 |事件名称

意大利甲级联赛

卡利亚里 - 热那亚


英格兰 super 联赛

南安普顿 - 伯恩茅斯

莱斯特 - 热刺

伯恩利 - 诺维奇

<---------------- XXX ------------!>

这是示例查询。

$pre = $wpdb->get_results("SELECT * FROM `prematch` WHERE sport_id =1 ORDER BY timer");
$league_name = 0;
foreach ($pre as $event) {
$l_name = $event->league_name;
$event_name = $event->event_name;

if($league_name != $l_name){
$leg_name = $event->league_name;
}

echo $leg_name;
echo $event_name

帮助或建议将不胜感激。

最佳答案

get_results 方法有第二个参数:

wpdb::get_results( string $query = null, string $output = OBJECT )

利用它并传递ARRAY_A,然后get_results 将返回一个数组而不是一个对象:

$pre = $wpdb->get_results("SELECT * FROM `prematch` WHERE sport_id =1 ORDER BY timer", ARRAY_A);

然后处理数组:

$ligues_events = array();

foreach ($pre as $key => $item) {
$ligues_events[$item['league_name']][$key] = $item['event_name'];
}

并输出:

foreach ($ligues_events as $ligue_name => $events) {
echo $ligue_name;
foreach ($events as $event) {
echo $event;
}
}

wpdb::get_results

Hardcoded example

关于mysql - 在WordPress数据库自定义表查询中按常用列名显示数据行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58859531/

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