สอน SQL: การใช้ Subquery
HTML-код
- Опубликовано: 30 янв 2014
- การใช้ชุดคำสั่งสืบค้นย่อย (Subquery, Inner Query, Nested Query)
Download a sample (Yummi2012) database file from goo.gl/p5JlUQ
Download SQL script from goo.gl/h5uLyK
เชิญสมัครเป็นสมาชิกของช่องนี้ได้ที่ ► ruclips.net/user/subscription_...
สอน Microsoft SQL Server 2012, 2014, 2016, 2017 ► • สอน Microsoft SQL Server
สอน PostgreSQL ► • สอน PostgreSQL
สอน MySQL ► • สอน MySQL 8
สอน SQLite ► • สอน SQLite
การใช้ Excel ในการทำงานร่วมกับกับฐานข้อมูล (SQL Server, MySQL, Access) ► • สอน Excel: ฐานข้อมูลแล...
การเชื่อมต่อกับฐานข้อมูล (SQL Server, MySQL, SQLite) ด้วย Python ► • สอนไพธอน Python 3 การต...
#prasertcbs_SQL #prasertcbs #prasertcbs_mssql
อาจารย์สอนดีมากๆเลยคะ ช่วยทำคริปเพิ่มเกี่ยวกับเรื่องนี้เยอะๆได้มั้ยคะหนูกำลังเรียนอยู่ และก็งงๆแต่อาจารย์ได้คลายทุกปมสงสัยเลยคะ ขอบคุณล่วงหน้านะคะ
อาจารย์ ลงsql ผิดเปล่าครับ มันต้องมีสองตัวไม่ใช่หรอครับ แต่อจารย์ลงให้แค่ตัวเดียว
เวลาเราเขียนให้มี aggregate function ใน select เราไม่จำเป็นต้อง group by ... หรอครับ
ไม่จำเป็นต้องมี group by ก็ได้หากทุกคอลัมน์ใน select เป็น aggregate function ทั้งหมด เช่น
select count(*) from table
แต่เขียน
select gender, count(gender) from table group by gender
จะเป็นการนับจำนวนแถวแยกตามเพศ
ผมเขียน Queary ชุดที่ 1,2และ3 แยกกันเเล้วสามารถ รันผลออกมาถูกต้องครับ
เเต่มีข้อสงสัยว่า "เวลานำมา เขียนรวมกัน เเล้ว Group BY ออกมา เเล้วผลลัพท์ ถึงไม่ตรงตามข้อมูลใน DB ครับ"
code ดังนี้ ครับ
1
SELECT tb_checkname.cnstdID, SUM(tb_checkname.cnScore)
From tb_checkname
GROUP BY tb_checkname.cnstdID;
2
SELECT tb_exams.eaStdID,SUM(tb_exams.eaScore)
FROM tb_exams
GROUP BY tb_exams.eaStdID
3
SELECT tb_checkjob.cjStdID,SUM(tb_checkjob.cjScore)
FROM tb_checkjob
GROUP BY tb_checkjob.cjStdID
โค็ดรวม ครับ
SELECT tb_checkname.cnstdID, SUM(tb_checkname.cnScore) , SUM(tb_exams.eaScore),SUM(tb_checkjob.cjScore)
From tb_checkname , tb_exams , tb_checkjob
WHERE (tb_checkname.L_id = tb_exams.L_id
AND tb_checkjob.L_id = tb_exams.L_id)
GROUP BY tb_checkname.cnstdID
;
เชื่อมตารางด้วย L_id ครับ
ผิดครับ