簡體   English   中英

SET @var:= SELECT * FROM table_name:是可能的

[英]SET @var := SELECT * FROM table_name: is it possible

我正在嘗試編寫我的MySQL查詢,但我堅持這一點 - 我有從php到SQL數據庫的多個查詢:

SET @var := SELECT MAX(first_column)
    FROM table;

SELECT @var, 
    table.second_column
FROM table;

但它返回SQL錯誤。 當我在phpmyadmin中使用它時,它工作正常。 我用谷歌搜索,我看到人們只在存儲過程中使用“SET @var = MySQL query”。 是否可以按我想要的方式使用它?

如果您正在運行多個查詢(即,在查詢中有; ),則需要將其作為兩個單獨的查詢運行,或者使用mysqli_multi_query類的命令。 mysql_query命令一次只能運行一個查詢。

mysql_query('SET @VAR := SELECT MAX(first_column) FROM TABLE');
mysql_query('SELECT @var, table.second_column FROM table');

另請參閱此相關問題

SELECT MAX(first_column) INTO @var FROM table; 
SELECT @var,table.second_column FROM table;  

暫無
暫無

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

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