我卡在正在使用子查詢和一直無法閱讀手冊,並嘗試不同的想法後弄明白更新查詢。以下是查詢表&查詢。表Temp_2,Temp_3 & Temp_4都有33行,沒有空值。MySQL的更新子查詢問題
有關如何解決此問題的任何想法?
CREATE TABLE temp_2 (
date_value date default NULL,
close_adj_value_1 double default NULL);
CREATE TABLE temp_3 (
date_value date default NULL,
first_close_adj_value_1 double default NULL);
CREATE TABLE temp_4 (
date_value date default NULL,
pct_return_1 double default NULL);
INSERT INTO temp_4 (date_value) SELECT date_value FROM temp_2;
UPDATE temp_4
SET pct_return_1 =
(SELECT ((temp_2.close_adj_value_1/temp_3.first_close_adj_value_1) - 1)
FROM temp_2,temp_3
WHERE temp_2.date_value = temp_3.date_value);
感謝, 埃裏克
你的子查詢似乎是專門從temp_2和temp_3中選擇的,而不考慮它在temp_4中更新的內容。這本質上會使temp_4中的所有行都獲得相同的值。你究竟想要做什麼? – VoteyDisciple 2009-08-25 23:01:14