嘗試創建一個查詢以獲取與用戶相關的最新記錄。這是我嘗試編寫一個查詢,返回與特定用戶相關的最新行
"SELECT *
FROM (
SELECT *
FROM mytable
ORDER BY id
DESC LIMIT 1)
WHERE userid = $userID";
嘗試創建一個查詢以獲取與用戶相關的最新記錄。這是我嘗試編寫一個查詢,返回與特定用戶相關的最新行
"SELECT *
FROM (
SELECT *
FROM mytable
ORDER BY id
DESC LIMIT 1)
WHERE userid = $userID";
你還可以:
Select * from table
Where id =
(Select Max(Id) from table
where userid = $userID)
使用top(1)
Select TOP(1) * FROM table ORDER BY id DESC
'TOP'是用於SQL Server的。 MySQL有'LIMIT'。 (ANSI SQL有'FETCH FIRST'。) – jarlh
沒錯,我讀過的標題顯示sql無論如何你是對的 –
嘗試:
SELECT *
FROM mytable
WHERE userid = $userID
ORDER BY id DESC
LIMIT 1
簡單地跳過子查詢:
SELECT *
FROM mytable
WHERE userid = $userID
ORDER BY id DESC
LIMIT 1
跳過子查詢。 – jarlh
使用此查詢,您將獲得所有用戶的最後一條記錄,然後是您想要的用戶過濾這一條記錄,這是錯誤。 –
你的嘗試有什麼問題?添加你得到的錯誤。這將與您在派生表上缺少的表別名有關。像@jarlh說你並不需要使用派生表 – ughai