gpt4 book ai didi

php - 使用两列将两个 SQL 表相互连接

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

问题:

我正在尝试将评分表 (betyg_essays) 中两列中的 ID“翻译”为另一个表 (betyg_users) 中那些用户的真实姓名。

评分表 (betyg_essays) 如下所示:

enter image description here

用户表 (betyg_users) 如下所示:

enter image description here

PHP 代码(到目前为止):

$query = 'SELECT * FROM betyg_essays JOIN betyg_users ON betyg_essays.Examiner = betyg_users.UID';

考官/主管列 (betyg_essays) 对应于 UID 列 (betyg_users)。

期望的输出应该是(使用 Firstname/Lastname 列):

  1. 考官:约翰霍普金斯。主管:迈克·贝克。
  2. 考官:约翰霍普金斯。主管:迈克·贝克。

非工作 SQL 查询:

$query = "SELECT 
(u1.Firstname + ' ' + u1.Lastname) AS Examiner,
(u2.Firstname + ' ' + u2.Lastname) AS Supervisor
FROM betyg_essays grade
INNER JOIN betyg_users u1 ON grade.Examiner = u1.UID
INNER JOIN betyg_users u2 ON grade.Supervisor = u2.UID";

最佳答案

SELECT
CONCAT(u1.FirstName, ' ', u1.LastName) AS Examiner,
CONCAT(u2.FirstName, ' ', u2.LastName) AS Supervisor
FROM betyg_essays e
INNER JOIN betyg_users u1 ON e.Examiner = u1.UID
INNER JOIN betyg_users u2 ON e.Supervisor = u2.UID

我没有试过代码,你可能需要做一些调整。

更新:修复了 id 的问题

INNER JOIN betyg_users u2 ON e.Supervisor = u2.UID

更新 2:

我已将 + 更改为 CONCAT 函数。显然,MySQL 处理字符串的方式与 SQL Server 不同。

关于php - 使用两列将两个 SQL 表相互连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10968180/

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