簡體   English   中英

SQL-AS-表不存在-1146

[英]SQL - AS - table doesn't exist - 1146

我的查詢是:

SELECT temp.pid FROM 
(SELECT postid, date FROM swapping AS s, post AS p 
WHERE s.mid='2' AND p.postid=s.postid)  AS temp 
WHERE temp.date = (SELECT MAX(date) FROM temp)

我收到#1146-表'databasename.temp'不存在

我該如何運作? 謝謝。

似乎您想根據“日期”選擇最后一個“ pid”,其中s.mid ='2'

試試看(找出pid的來源並糾正第一行之后)

SELECT [s? or maybe p?].pid
FROM swapping s INNER JOIN post p ON p.postid=s.postid
WHERE s.mid = '2'
ORDER BY date DESC
LIMIT(0,1)

您可能還需要按日期對日期列進行別名別名。

我認為您的專欄內容有誤...

SELECT temp.pid  FROM  ( SELECT  postid, ...

應該

SELECT temp.postid  FROM  ( SELECT  postid, ...

@DRapp至少擊中了頭部。 您沒有在您所引用的子選擇中選擇“ pid”(如果該列存在於交換表或發布表中),則您選擇的子對象為temp,因此在那里會引發某種類型的錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM