sql - SQL执行(#1066)

标签 sql error-handling

我对此代码有疑问:

SELECT
      produse.DENUMIRE,
      clase.CLASA,
      furnizori.NUME_J,
      furnizori.NUME_F
       
      
FROM furnizori

JOIN produse ON produse.ID_CLASA = clase.ID
JOIN produse ON produse.ID_FURNIZOR = furnizori.ID


LIMIT 1000
;


错误是:
SQL执行(#1066)
不是唯一的表/别名:“produse”

谢谢!

最佳答案

您需要为produse表使用不同的别名,因为它已经使用了两次:

SELECT
      p1.DENUMIRE,
      clase.CLASA,
      furnizori.NUME_J,
      furnizori.NUME_F
FROM furnizori
JOIN produse p1 ON p1.ID_CLASA = clase.ID
JOIN produse p2 ON p2.ID_FURNIZOR = furnizori.ID

ORDER BY p1.DENUMIRE

LIMIT 1000

如果需要其他顺序,可以调整ORDER BY子句。

关于sql - SQL执行(#1066),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36087443/

相关文章:

php - 检查准备好的语句 PDO 的结果?

r - tryCatch :Error not caught

sql-server - 记录 SQL 错误

sql - 我棘手的 SQL 更新查询效果不佳

php - 将注册失败的错误日志插入PHP中的表

PYTHON-如何解决问题 : pywintypes. 错误 : (5, 'OpenClipboard' , 'Access is denied' )

php - 警告: preg_match() [function.preg-match]: No ending delimiter '/' found

php - 使用 PHP 在 iOS 社交网络应用程序中发送好友请求并添加好友?

sql - 如何通过标签检索产品(SQL问题)

c# - 有没有正确的方法来检索 SQL 中的字符串字段