出於某種原因,我不能讓這個查詢時,我做了選擇進入返回一個值。MySQL的SELECT INTO <variable>返回null,但查詢返回的值
給定一個表t10company
,我有一個列叫做CompanyID
這是CHAR(8)
,它在它的有一個值:MYCO0001
如果我發出以下查詢:
SELECT
MAX(CONVERT(RIGHT(CompanyID, 4), UNSIGNED INTEGER))
FROM t10company
WHERE LEFT(CompanyID, 4) = 'MYCO'
GROUP BY LEFT(CompanyID, 4)
ORDER BY RIGHT(CompanyID, 4) LIMIT 1;
我得到一個返回值爲1,這是我所期望的。
如果我發出與INTO @myvar
不同的完全相同的查詢,然後執行SELECT @myvar
,它總是返回NULL。它在我正在編寫的存儲過程中執行此操作,並且也在MySQL Workbench的查詢窗口中執行此操作。我不知道爲什麼?
通常在SELECT列表中包含GROUP BY表達式,但不是必需的。 – spencer7593 2012-07-19 21:21:26