select
id
from
tableABC
limit (select count(id) from tableCBA), 1
如果我需要選擇限制,如示例代碼中所示,如何在mySql中執行此操作?這只是本論壇目的的簡化代碼,否則這是其他情況下選擇的複雜情況的一部分。mysql選擇內部限制
select
id
from
tableABC
limit (select count(id) from tableCBA), 1
如果我需要選擇限制,如示例代碼中所示,如何在mySql中執行此操作?這只是本論壇目的的簡化代碼,否則這是其他情況下選擇的複雜情況的一部分。mysql選擇內部限制
不能直接有一個動態值的上限,但你的查詢可以被改寫不限制,具體如下:
set i := (select count(*) from tableCBA);
select id
from tableABC
where (i := i-1) = 0;
這將返回第n行,其中n是tableCBA中的行數;
不知道這是否是性能明智的這樣一個好主意?喜歡創造力。 – Roger 2012-03-05 13:34:30
select @LimitRowsCount1=count(id) from tableCBA;
PREPARE STMT FROM "SELECT id from tableABC LIMIT ?";
EXECUTE STMT USING @LimitRowsCount1;
您是否試圖選擇表格的最後一行?顯示你的模式。 – 2012-03-05 13:14:37
我不能在MySQL中做到這一點。您可以在LIMIT上使用子選擇,但不使用**。我會建議將其編碼到客戶端(也許PHP?)。否則,創建存儲過程。後者應該不是問題。 – Roger 2012-03-05 13:18:15