mysql - 如何在 SQL 中将 2 列合并为 1 列 TO 输出

标签 mysql sql

我有这个sql查询:

$sql = "SELECT d.doctor_name, a.patient_name, s.date, s.time FROM appointments AS a LEFT JOIN doctors AS d ON d.id = a.doctor_id LEFT JOIN slots AS s ON  s.id = a.slot_id WHERE s.date > '2019-10-01' ORDER BY d.doctor_name DESC ";

$result = $mysqli->query($sql);

echo '<pre>';
while ( $row = $result->fetch_assoc() ) {
    print_r($row);
}
echo '</pre>';

它的输出是:

Array
(
    [doctor_name] => Khaled
    [patient_name] => Nawaz
    [date] => 2019-10-11
    [time] => 02:01
)
Array
(
    [doctor_name] => Khaled
    [patient_name] => Anik
    [date] => 2019-10-07
    [time] => 02:31
)
Array
(
    [doctor_name] => Khaled
    [patient_name] => Manik
    [date] => 2019-10-02
    [time] => 03:31
)

我可以将datetime列合并为slot_date_time吗?

因此输出将是例如:

Array
(
    [doctor_name] => Khaled
    [patient_name] => Manik
    [slot_date_time] => 2019-10-02 03:31
)

最佳答案

尝试这个查询

SELECT d.doctor_name, a.patient_name, CONCAT(s.date, ',', s.time) AS slot_date_time  
FROM appointments AS a LEFT JOIN doctors AS d 
ON d.id = a.doctor_id LEFT JOIN slots AS s 
ON  s.id = a.slot_id 
WHERE s.date > '2019-10-01' 
ORDER BY d.doctor_name DESC

使用CONCAT将两列合并为一列

关于mysql - 如何在 SQL 中将 2 列合并为 1 列 TO 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59526081/

相关文章:

mysql - 我想要一个 hibernate 查询来执行以下 SQL 查询

c# - EF : How to execute a SQL-query with multiple joins?

php - 创建新条目时修改记录

php - 根据条件运行两个不同的 SELECT 查询之一

php - 如何修复通知: Undefined index in PDO

mysql - SQL 仅返回特定年龄的人

php - 在mysql中动态更改字段顺序

php - 如何修改已执行的 Laravel 查询生成器

mysql - 在 INSERT 中选择

sql - 如果索引用于查询,PostgreSQL 将不会使用索引进行投影