ต้องการ select จากตาราง 1 ตารางที่ทำการ sum ข้อมูลตามรหัส แล้วนำค่าที่ได้ไปใส่ตารางที่ 2 ตามคอลัมน์ที่กำหนดคะ
ที่บอกว่าเอาไปใส่คือ insert เข้าไปหรือปล่าวครับ
หรือว่ามี query อีกอัน แล้วอยากได้ ค่า ไปใช้ใน query
Date :
2015-05-25 09:17:06
By :
fonfire
Insertเข้าไปเลยคะ
ไม่ทราบว่าแบบไหนดีกว่ากันคะ
พอดีพึ่งหัดเขียนค่ะ เลยยังไม่ค่อยเข้าใจ
Date :
2015-05-25 10:41:14
By :
Preeyapan
Code (SQL)
INSERT INTO tablename(column1,column2)
SELECT nisit_id , SUM(score_etc) FROM testSend
WHERE resub_id = '12345'
GROUP BY nisit_id
อย่าลืมเปลี่ยนชื่อ tablename กับ column1 , column2 ครับ
Date :
2015-05-25 11:16:00
By :
01000010
insert ไม่ได้คะ ไม่ทราบว่าเกี่ยวกับอะไรคะ
Date :
2015-05-25 21:16:40
By :
Preeyapan
นำค่ามาใส่ตารางนี้คะที่ คอลัมน์ homework_score
โดยที่คอลัมน์ resub_id และ nisit_id มีข้อมูลก่อนหน้านี้แล้วคะ
Date :
2015-05-25 21:19:48
By :
Preeyapan
แบบนี้ต้องทำเป็นการ update แทนหรือเปล่าค่ะ
Date :
2015-05-25 21:46:43
By :
Preeyapan
สามารถ หาผลรวมได้แล้วคะ แต่ไม่สามารถนำค่าไป Update อีกตารางได้
Date :
2015-05-25 22:18:01
By :
Preeyapan
#NO5 Error ก็บอกอยู่ครับ ไม่อนุญาติให้เพิ่มค่า NULL ในคอลัมป์ resub_id ตาราง Table_1
วิธีแก้ก็ไปตั้งค่าตารางให้คอลัมป์นั้นเก็บ NULL ได้ หรือ กำหนดค่าให้มันไม่ NULL ตอน INSERT SELECT ครับ
เช่น
Code (SQL)
INSERT INTO Table_1(nisit_id,resub_id,homework_score)
SELECT nisit_id , resub_id , SUM(score_etc) FROM Table_2
WHERE resub_id = '12345'
GROUP BY nisit_id
Date :
2015-05-25 23:07:26
By :
01000010
ลอง insert ลงไปแล้วค่า ค่าจะไปต่อเป็นแถวใหม่ ไม่ได้ update ตามรหัสนิสิตเดิมที่มีอยู่
คืออยากนำค่าผลรวมที่ sum ได้ไปใส่คอลัมน์ homework_score ใน Table_1 ตาม nisit_id , resub_id ที่มีอยู่แล้วคะ
รบกวนหน่อยนะคะ...ขอบคุณคะ
Date :
2015-05-26 20:28:27
By :
Preeyapan
ยังไม่ค่อย เข้าใจเลยคะ พอดีพึ่งหันเขียน ไม่ทราบว่าตรง tmp คืออะไรคะ
รบกวนหน่อยนะคะ ขอบคุณคะ
Date :
2015-05-28 20:57:07
By :
Preeyapan
Date :
2015-05-28 21:00:39
By :
Preeyapan
update Table_1
set Table_1.homework_score = tmp.sum_score
from
Table_1
inner join (
select nisit_id, sum(score_etc) as sum_score ,resub_id
from table_2 group by nisit_id
) as tmp
on tmp.resub_id = table_1.resub_id and tmp.nisit_id = Table_1.nisit_id
แก้เป็นแบบนี้แล้วก้อยังไม่ได้เลยคะ
Date :
2015-05-28 21:22:38
By :
Preeyapan
ได้แล้วคะ แล้วถ้าต้องการให้ where ตาม resub_id ที่เราเลือกไม่ทราบว่าจะต้องใส่ where ไว้ตรงไหนคะ
ขอบคุณคะ
Date :
2015-05-28 21:24:22
By :
Preeyapan
whee ....... ต่อท่้ายไปแลยครับ
Date :
2015-05-29 07:33:37
By :
Chaidhanan
ทำได้แล้วยินดีด้วยครับ แต่ช่วยเอาโค๊ดที่ทำได้แล้ว มาบอกคนอื่นๆ ด้วยจะดีมากเลยครับ
ให้เป็นวิทยาทานกับคนอื่นต่อๆไปครับ ได้บุญด้วย
Date :
2015-05-29 07:40:48
By :
Chaidhanan
Load balance : Server 01