gpt4 book ai didi

php - mysql select query for multiple ID's that call name 来自同一个用户名表

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

快速提问。感觉像个菜鸟,但还没有找到正确的语法。

有 3 个表。

T1-评估 ID(自动增量)检查员ID,助理ID,植物名

T2-用户ID(自动增量),用户名,姓名

T3-plantID(自动增量)植物名

基本上我想要一个与 T1 非常相似的 php/mysql 表,但我想要的不是列出 ID,而是名称。到目前为止,这是我的电话:

SELECT DISTINCT a.AssessmentID, u.Name, a.PlantAssistID, p.PlantName 
FROM assessmentscores AS a, user AS u, plant AS p
WHERE u.userID=a.InspectorID AND u.Name='$name' AND p.PlantID=a.Plant

这是因为 u.Name 会给我检查员的名字,但我不知道如何调用第二个 (a.PlantAssistID)。只需为两者使用相同的名称即可。

我应该使用对服务器的什么调用来返回两个不同的名称。任何帮助将不胜感激

最佳答案

首先要做的事情是:如果您想从评估表中进行选择并使用其他表扩充结果集,请考虑使用 LEFT JOIN。如果您想要限制性更强的结果,即仅返回与现有用户实际关联的评估,请改用 INNER JOIN。下面的示例使用 LEFT JOIN

不确定这是否正是您想要的,但您可以尝试:

SELECT a.AssessmentID as a_id, u.Name as u_name, a.PlantAssistID as a_plantassistid, p.PlantName as p_plantname, uass.Name as u_ass_name
FROM assessmentscores a
LEFT JOIN user u ON u.UserID = a.AssessmentID
LEFT JOIN plant p ON p.PlantID = a.Plant
LEFT JOIN user uass ON uass.UserID = a.PlantAssistentID

结果:

array(
'a_id' => int /* AssessmentID */
'u_name' => string /* User name */
'a_plantassistid' => int /* Assessment.PlantAssistID */
'p_plantname' => string /* Plant name */
'u_ass_name' => string /* The user name of the user with assistent_id */
);

关于php - mysql select query for multiple ID's that call name 来自同一个用户名表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7084188/

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