gpt4 book ai didi

MySQL - 结合 SELECT 两个表

转载 作者:行者123 更新时间:2023-11-29 13:05:05 24 4
gpt4 key购买 nike

我有这些表:

reg_movs:

regmovs_id      id_car             date               status    
1 1 2014-02-02 16:00:00 0
2 1 2014-02-02 16:12:00 5
3 2 2014-02-02 16:22:03 0
4 2 2014-02-02 16:45:14 5

服务详细信息:

id          id_Car                date_updated           price     
1 1 2014-02-02 16:12:00 45.00
2 2 2014-02-02 16:45:14 30.00

我的意思是,当status=0时,它将在我的SELECT QUERY中设置开始时间。并且,当status=5时,它将是结束时间。

我怎样才能像这样进行这个查询:

id_car     date         start         end                 price
1 2014-02-02 16:00:00 16:12:00 45.00
2 201-02-02 16:22:03 16:46:14 30.00

最佳答案

您需要首先在 reg_movs 上执行自连接,将两行合并为一行。然后你需要将其与 service_detail 进行内部连接来选择汽车的价格。以下是基于为架构提供的信息的示例查询。

SELECT t1.id_car
, DATE_FORMAT(t1.date, '%Y-%m-%d') AS date
, DATE_FORMAT(t1.date, '%T') AS start
, DATE_FORMAT(t2.date, '%T') AS end
, service_detail.price
FROM reg_movs AS t1
inner join reg_movs AS t2 on t1.id_car=t2.id_car AND t1.status=0 AND t2.status=5
inner join service_detail ON t1.id_car=service_detail .id_car

如果您想显示没有结束时间的记录(即表中只有一条状态为 0 的记录),您可能需要更改查询以使用左联接

关于MySQL - 结合 SELECT 两个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22824617/

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