Php 从查询返回对象数组
我目前拥有以下my_sql逻辑:Php 从查询返回对象数组,php,Php,我目前拥有以下my_sql逻辑: $results = $wpdb->get_results(' SELECT catname as subcatname,categoryid, (SELECT catname
$results = $wpdb->get_results('
SELECT
catname as subcatname,categoryid,
(SELECT
catname
FROM
isc_categories
WHERE
categoryid= '.(int)$id.') as catname
FROM
isc_categories
WHERE
catparentid = '.(int)$id.'
AND
catvisible=1
ORDER BY
subcatname' );
$rs = mysql_query($query);
while ($row = mysql_fetch_object($rs)) {
var_dump($row);
}
这将返回如下所示的数组:
array(1) {
[0]=>
object(stdClass)#16 (3) {
["subcatname"]=>
string(29) "Category Name: D.C Ice Makers"
["categoryid"]=>
string(4) "1113"
["catname"]=>
NULL
}
}
array(1) {
[0]=>
object(stdClass)#17 (3) {
["subcatname"]=>
string(33) "Category Name: Parry Boiling Tops"
["categoryid"]=>
string(4) "1114"
["catname"]=>
NULL
}
}
但是,我希望以以下格式返回结果:
array(18) {
[0]=>
object(stdClass)#258 (3) {
["subcatname"]=>
string(22) "Air Recirculation Unit"
["categoryid"]=>
string(4) "1107"
["catname"]=>
string(18) "Catering Equipment"
}
[1]=>
object(stdClass)#257 (3) {
["subcatname"]=>
string(17) "Beverage Machines"
["categoryid"]=>
string(3) "108"
["catname"]=>
string(18) "Catering Equipment"
}
}
我尝试过使用“mysql\u fetch\u对象”,但我很难以我需要的格式返回结果。谢谢查询错误。试着这样做:
SELECT c.catname as subcatname,
c.categoryid,
cc.catname
FROM isc_categories c
JOIN isc_categories cc
ON cc.categoryid = c.catparentid
WHERE c.catparentid = ' . $id . '
AND c.catvisible = 1
ORDER BY c.catname
如果您使用相同的查询仅获取顶级父类别(当
$id
为0时),请使用左联接
。查询错误。试着这样做:
SELECT c.catname as subcatname,
c.categoryid,
cc.catname
FROM isc_categories c
JOIN isc_categories cc
ON cc.categoryid = c.catparentid
WHERE c.catparentid = ' . $id . '
AND c.catvisible = 1
ORDER BY c.catname
如果您使用相同的查询仅获取顶级父类别(当
$id
为0时),请使用左联接。显示您的查询。。这就是问题所在!我已经包括了这个问题,谢谢你的提问。。这就是问题所在!我已经包含了这个查询,感谢我在SQL编辑器中使用的查询,它有什么问题?我在SQL编辑器中使用的查询,它有什么问题?