gpt4 book ai didi

php - 数据库 : Fetch two fields from same column on every array result

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

+----+--------------+-------------+
| id | pax | travel_date |
+----+-------+--------------------+
| 1 | passenger1 | 2018-06-14 |
| 2 | passenger2 | 2018-06-14 |
| 3 | passenger3 | 2018-03-24 |
| 4 | passenger1 | 2018-03-16 |
| 5 | passenger1 | 2018-02-05 |
| 6 | passenger3 | 2018-01-11 |
+----+--------------+-------------+

上面是我的 Travel_manifest 表,我想获取已预订旅行的人员的列表,并包括他们各自之前的旅行日期。我不知道如何在我的查询中包含他们各自之前的旅行日期。

下面是我的查询,

$currentDate = '2018-05-14';

SELECT pax,travel_date FROM travel_manifest WHERE travel_date > 2018-05-14;

我正在寻找看起来像的查询结果,例如乘客1

Array
(
[id] => 1
[name] => passenger1
[travel_date] => 2018-05-14
[travel_date] => 2018-05-16 //previous travel date
)

最佳答案

试试这个:

SELECT id, pax AS name, GROUP_CONCAT(DATE_FORMAT(travel_date, '%Y-%m-%d')) AS travel_dates 
FROM travel_manifest
WHERE travel_date > '2018-03-15'
GROUP BY name

它将返回如下内容:

id  name        travel_dates
1 passenger1 2018-06-14,2018-03-16
2 passenger2 2018-06-14
3 passenger3 2018-03-24

在 PHP 中,您可以使用

获取旅行日期数组(假设您将每一行的数据提取到 $row 变量中)
$travel_dates = explode(',', $row['travel_dates']);

注意:我假设 Travel_date 列是 DATETIME 类型。

关于php - 数据库 : Fetch two fields from same column on every array result,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50321362/

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