使用 php 返回 GROUP_CONCAT('column x') 值
Posted
技术标签:
【中文标题】使用 php 返回 GROUP_CONCAT(\'column x\') 值【英文标题】:Using php to return GROUP_CONCAT('column x') values使用 php 返回 GROUP_CONCAT('column x') 值 【发布时间】:2010-11-12 08:40:26 【问题描述】:我正在尝试使用 php 将 SQL 值返回到 html 表中。除了最后一列"GROUP _ CONCAT (provision_id)."
相关代码:
<?php
global $wpdb;
$wpdb->show_errors();
$contents = $wpdb->get_results( $wpdb->prepare("SELECT salaries.id, name, remaining, contract_value, GROUP_CONCAT( provision_id ) FROM salaries LEFT JOIN contracts ON contracts.id = salaries.id GROUP BY salaries.id"));
?>
[table header stuff...]
<?php
foreach ($contents as $content)
?>
<tr>
<td><?php echo $content->name ?></td>
<td><?php echo $content->remaining ?></td>
<td><?php echo $content->contract_value ?></td>
<td><?php echo $content->GROUP_CONCAT(provision_id) ?></td>
<?php ; ?>
</tr>
只是回显$content->provision-id
也不起作用。
【问题讨论】:
【参考方案1】:使用alias for the column。
GROUP_CONCAT( provision_id ) as pids
...
echo $content->pids
【讨论】:
【参考方案2】:如果您要获取对象,您应该在 PHP 中为您的列提供合法的类成员标识符(我将链接到手册,尽管它们的 description of valid variable names 很糟糕):
SELECT ... GROUP_CONCAT(provision_id) AS provisions
【讨论】:
以上是关于使用 php 返回 GROUP_CONCAT('column x') 值的主要内容,如果未能解决你的问题,请参考以下文章
具有 3 列的 MYsql GROUP_CONCAT 在 PHP 中执行
MySQL - GROUP_CONCAT 返回重复数据,不能使用 DISTINCT