gpt4 book ai didi

mysql - SQL JOIN,用值替换 id

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

我有一个查询给我带来了麻烦,我不知道该怎么做

我必须从 TICKETS 表中检索记录并将其与另外 2 个表连接在一起,这不是问题,我需要将记录中的一个值替换为另一个表中的值......例如:

餐 table 票:

努米特用户身份类型描述附优先事项地位日期分配

表用户

努米特公司 ID姓名电子邮件用户名密码附注安全代币日期

表格公司

努米特姓名

示例记录

公司名称 - 用户名 - 类型 - 职位 - 优先级 - 状态 - 日期 - 分配

“someCompany” - “someUser” - “someTitle” - 1 - “打开” - “yyy/mm/dd” - 2(user_id)

在返回记录的分配字段中,如果它不是 0(零),我需要将其替换为用户表中的对应值

这是我到目前为止的查询

SELECT tickets.numint, tickets.type, tickets.title, tickets.description,
tickets.priority, tickets.status, tickets.date,
users.name AS user_name, companies.name AS company_name,
CASE WHEN tickets.assignation=0 THEN 'not-assigned'
ELSE ????????? END AS assignation
FROM tickets
LEFT JOIN users ON tickets.user_id = users.numint
LEFT JOIN companies ON users.company_id = companies.numint

我不知道如何替换该值,或者 CASE 是否应该在连接之后...

最佳答案

您想将用户名显示为分配吗?使用 users.name 以防万一。

SELECT tickets.numint, tickets.type, tickets.title, tickets.description,
tickets.priority, tickets.status, tickets.date,
users.name AS user_name, companies.name AS company_name,
CASE WHEN tickets.assignation=0 THEN 'not-assigned'
ELSE users1.name END AS assignation
FROM tickets
LEFT JOIN users ON tickets.user_id = users.numint
LEFT JOIN companies ON users.company_id = companies.numint
LEFT JOIN users AS users1 ON tickets.assignation = users1.numint

关于mysql - SQL JOIN,用值替换 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19053340/

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