gpt4 book ai didi

mysql - 'wp_cons_users.id' 中的未知列 'on clause'

转载 作者:行者123 更新时间:2023-11-30 01:31:57 25 4
gpt4 key购买 nike

我有三个表,第一个用于用户,另一个用于主题,第三个包含 user_id、subject_id 外键。

当我运行以下 sql 时,我得到未知的列。

SELECT wp_cons_users.first_name, wp_cons_subject.subject, wp_cons_skilllist.skill_level
FROM `wp_cons_subject`
JOIN wp_cons_skilllist ON wp_cons_skilllist.user_id = wp_cons_users.id
JOIN wp_cons_users ON wp_cons_users.id = wp_cons_skilllist.user_id
WHERE wp_cons_subject.id = '1'
ORDER BY `wp_cons_skilllist`.`skill_level` DESC

我找不到此查询的错误。

wp_cons_技能列表

列链接

id(主要)
user_id wp_cons_users -> id

subj_id wp_cons_subject -> id技能等级

<小时/>

在这里,我尝试获取任何给定主题 ID 的用户名、技能级别和主题。

最佳答案

看起来您的主要问题是 JOIN 的顺序。在第一次联接中,您将与 wp_cons_users.id 进行匹配,但直到稍后的查询中才会联接该表。如果您重新排序连接,它应该会工作得更好。另外,根据您的表格描述,您似乎还需要加入 subject_id。此查询应该有帮助:

SELECT wp_cons_users.first_name
, wp_cons_subject.subject
, wp_cons_skilllist.skill_level
FROM wp_cons_users
JOIN `wp_cons_subject`
ON wp_cons_users.id=`wp_cons_subject`.user_id
AND wp_cons_subject.id = '1'
JOIN
wp_cons_skilllist
ON wp_cons_skilllist.user_id = wp_cons_users.id
AND wp_cons_skilllist.subject_id = `wp_cons_subject`.id
ORDER BY `wp_cons_skilllist`.`skill_level` DESC

我猜测原始查询中没有的字段名称,因此如果它们与我的假设不同,您可能需要进行一些更改。

关于mysql - 'wp_cons_users.id' 中的未知列 'on clause',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17345962/

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