gpt4 book ai didi

mysql - 如何将特定字段(需要连接)放入每个条目的一行中

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

如果您熟悉 OSTicket,这就是我正在使用的数据库。

我试图获取每行的以下信息(为了可读性,我没有使用实际的字段名称,但我保持一致)

ticket_id, ticket_number, custom_field_1_value, custom_field_2_value

form_entry_values (contains: entry_id, custom_field_number, custom_field_value)

form_entry (contains: entry_id, ticket_id)

field (contains: field_id)

ticket (contains: ticket_id, ticket_number)

我能够轻松地(通过两个连接)获得一个字段,如下所示

SELECT t.ticket_id,
t.ticket_number,
v.custom_field_value
FROM ticket t
LEFT JOIN form_entry e
ON e.ticket_id = t.ticket_id
LEFT JOIN form_entry_values v
ON v.entry_id = e.entry_id
WHERE v.custom_field_number = 1

我不知道如何为我想要的两个字段执行此操作,但仍然将其放在每个 Ticket_id 的单行上。

最佳答案

你们很接近。由于您想要从该工单的 form_entry_values 表中获取其他记录,因此您需要多次加入该表。每次,您都可以在连接的 ON 部分指定 custom_field_number,这样您的 WHERE 就不会变得很粗糙。

SELECT t.ticket_id,
t.ticket_number,
v1.custom_field_value
v2.custom_field_value
FROM ticket t
LEFT JOIN form_entry e
ON e.ticket_id = t.ticket_id
LEFT JOIN form_entry_values v1
ON v1.entry_id = e.entry_id
AND v1.custom_field_number = 1
LEFT JOIN form_entry_values v1
ON v2.entry_id = e.entry_id
AND v2.custom_field_number = 2

关于mysql - 如何将特定字段(需要连接)放入每个条目的一行中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41726923/

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