Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP MySQL查询到CSV——一个属性的多个字段_Php_Mysql_Csv - Fatal编程技术网

PHP MySQL查询到CSV——一个属性的多个字段

PHP MySQL查询到CSV——一个属性的多个字段,php,mysql,csv,Php,Mysql,Csv,我正在尝试创建一个CSV文件,其中包含MySQL查询的输出。 我遇到的问题是,对于其中一列,我有多个字段与“entity_id”关联,因此它复制了行,而“value”字段则不同。相反,我希望CSV中的“值”字段与其他相关信息位于同一行的新列中 以下是守则的相关部分: $sqlQuery = mysql_query('SELECT `sales_flat_order`.`increment_id` , `sales_flat_order`.`created_at` , `sales_flat

我正在尝试创建一个CSV文件,其中包含MySQL查询的输出。 我遇到的问题是,对于其中一列,我有多个字段与“entity_id”关联,因此它复制了行,而“value”字段则不同。相反,我希望CSV中的“值”字段与其他相关信息位于同一行的新列中

以下是守则的相关部分:

$sqlQuery = mysql_query('SELECT  `sales_flat_order`.`increment_id` ,  `sales_flat_order`.`created_at` ,  `sales_flat_order`.`status` ,  `sales_flat_order`.`shipping_amount` ,  `sales_flat_order`.`grand_total` ,  `sales_flat_order`.`shipping_description` , `sales_flat_order`.`customer_email` ,  `sales_flat_order`.`customer_note` , `sales_flat_order_item`.`item_id` ,  `sales_flat_order_item`.`sku` ,  `sales_flat_order_item`.`qty_ordered` ,  `sales_flat_order_item`.`row_total` , `sales_flat_order`.`customer_firstname` ,  `sales_flat_order`.`customer_lastname`, `street`, `city`, `region`,`postcode`, `country_id`, `telephone`, `company`, `aitoc_order_entity_custom`.`value`
        FROM sales_flat_order
        INNER JOIN  `sales_flat_order_item` ON  `sales_flat_order`.`entity_id` =  `sales_flat_order_item`.`order_id` 
        INNER JOIN  `sales_flat_quote_item` ON  `sales_flat_order_item`.`quote_item_id` =  `sales_flat_quote_item`.`item_id` 
        INNER JOIN  `sales_flat_quote_address` ON  `sales_flat_quote_item`.`quote_id` =  `sales_flat_quote_address`.`quote_id` 
        LEFT OUTER JOIN `aitoc_order_entity_custom` ON `sales_flat_order`.`entity_id` = `aitoc_order_entity_custom`.entity_id`
        WHERE  `sales_flat_order`.`status` !=  "Complete" AND `sales_flat_quote_address`.`address_type` = "shipping" AND `sales_flat_order_item`.`row_total` != "0"');

// output the information
while ($queryRows = mysql_fetch_assoc($sqlQuery)) fputcsv($outputFile, $queryRows);

我将研究MySQL的
GROUPBY
子句和MySQL字符串连接函数。您可以有效地将多个值连接在一起,用逗号分隔它们,以便在CSV中使用。感谢您的指导。对任何好奇的人来说,我将
aitoc\u order\u entity\u custom
value
替换为
aitoc\u order\u entity\u custom
value
),并在查询结束时将GROUP BY
sales\u flat\u order
>)放在GROUP BY?为什么不直接使用
选择table1.entity\u id作为entity\u id,table2.entity\u id作为entity\u idt2
或类似的东西呢。问题只是两个字段的名称相同?或者我误解了你的问题。