gpt4 book ai didi

mysql - sql 查询在 Windows 上运行正常,但在 Ubuntu 上出现错误

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

我有一个疑问

SELECT DISTINCT(n.nid), n.title, n.type, n.status, n.moderate, n.teaser, e.event_start
FROM node n INNER JOIN
node_access na
ON na.nid = n.nid INNER JOIN
event e
USING (nid)
WHERE ((na.grant_view = 1) AND
CONCAT(na.realm, na.gid) IN ('all0','term_access1')) AND
n.status = 1 AND n.moderate = 0 AND e.event_start >= 1400558400
ORDER BY event_start;

它在 windows mysql 4.1.22-community-nt 上运行良好,但在 ubuntu 5.5.24 上它给出以下错误:

ERROR 1052 (23000): Column 'nid' in from clause is ambiguous

知道为什么会发生这种情况吗?假设我无法更改查询,因为它是从开源项目运行的。

最佳答案

这是 from 子句:

FROM node n INNER JOIN
node_access na
ON na.nid = n.nid INNER JOIN
event e
USING (nid)

该错误表明引擎不知道 nid 是来自 node 还是 node_access。如果您可以更改查询,则可以执行以下操作之一:

FROM node n INNER JOIN
node_access na
USING (nid) INNER JOIN
event e
USING (nid)

FROM node n INNER JOIN
node_access na
ON na.nid = n.nid INNER JOIN
event e
ON na.nid = e.nid

关于mysql - sql 查询在 Windows 上运行正常,但在 Ubuntu 上出现错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23773239/

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