2013-09-29 27 views
0
$db = mysql_select_db("remote"); 

if(!$db) { 
    die("Unable to select database"); 
} 

$query = "SET @cumulative_sum := 0; 
      SELECT timestamp, 
       @cumulative_sum := @cumulative_sum + value AS cumulative_sum 
      FROM remote.historical 
      WHERE timestamp>= CURDATE()"; 

$result = mysql_query($qry); 

當我使用我的HeidiSQL此查詢時,它的輸出好吧......運行累積高電流的一天,但是當我複製此代碼到PHP文件,Web瀏覽器輸出:這個MySQL查詢語法有什麼問題?

你有一個錯誤在你的SQL語法中;檢查手冊中 對應於你的MySQL服務器版本正確的語法使用 附近「SELECT時間戳,@cumulative_sum:= @cumulative_sum +價值 cumulative_sum F」位於第1行

有什麼不對本碼?

回答

2

除了執行兩條語句外,還可以在子查詢中聲明變量,例如。

SELECT timestamp, 
     @cumulative_sum := @cumulative_sum + value AS cumulative_sum 
FROM remote.historical, (SELECT @cumulative_sum := 0) b 
WHERE timestamp>= CURDATE()