bulibuli.work
ได้รับ reactions โดยเฉลี่ยเท่าไหร่ ก็สามารถทำได้ด้วยคำสั่ง SELECT post_type, AVG(reactions) FROM skooldio_page GROUP BY post_type ซึ่งก็ยังคงเป็นประโยคภาษาอังกฤษเข้าใจง่ายๆ เหมือนเดิม แต่คราวนี้ถ้าเราอยากทำแบบเดียวกันใน MS Excel ก็จะเริ่มซับซ้อนขึ้นมาอีกนิด ต้องมีการทำ Pivot Table อะไรว่าไป พอจะเห็นภาพมากขึ้นแล้วว่า SQL คืออะไร แต่ว่ามันดีขนาดนั้นจริงๆ หรอ? ทำไมถึงเป็นทักษะที่จำเป็นในยุคนี้? ลองมาดู 3 เหตุผลที่ทุกคนควรเริ่มหัดเขียน SQL กัน 1.
< เงื่อนไขข้อมูลด้านซ้าย ไม่น้อยกว่า ด้านขวา (a! < b) -> false! > เงื่อนไขข้อมูลด้านซ้าย ไม่มากกว่า ด้านขวา (a! > b) -> true 3.
`world` WHERE `id` = 1) AS `sub` FROM `gcms_plus`. `world` WHERE `id` = 1 ->where(1); ->select('id', 'COUNT(*) count', array($q1, 'sub')) ->where(1) ค่าเริ่มต้นของ Query Builder จะคืนค่าผลลัพท์เป็น Object หรือ แอเรย์ของ Object (หากผลลัพท์มีหลายรายการ) หากต้องการให้ผลลัพท์เป็นแอเรย์สามารถใช้ร่วมกับเมธอด toArray() ได้
SQL Operator คือกระบวนการทำงานเพื่อเลือกข้อมูลด้วยเงือนไขหรือวิธีการที่ต้องการ โดยระบบฐานข้อมูลหรือ Database จะมีการจอง key word บางคำ หรือ ตัวอักษรไว้สำหรับให้ SQL statement ใช้ระบุเงือนไข (Where clause) เพื่อเป็นการสั่งระบบให้ทำตามเงือนไขที่วางไว้ เช่น การเปรียบเทียบ การคำนวณทางคณิตศาสตร์ การทำกระบวนการเหล่านี้มักจะใช้ระบุเงือนไขภายใต้ SQL statement และ สามารถกำหนกได้หลายเงือนไขภายใน statement นั้นๆ ตัวอย่างรูปแบบกระบวนการ (SQL Operator) คำนวณทางคณิตศาสตร์(Arithmetic operators) เปรียบเทียบ (Comparison operators) ตรรกศาตร์ (Logical operators) 1. คำนวณทางคณิตศาสตร์(Arithmetic operators) จากตัวอย่าง a = 5, b = 10 Operator Description Example บวก + เพิ่มค่าของข้อมูล a + b = 15 ลบ – ลดค่าของข้อมูล a – b = 5 คูณ * เพิ่มค่าของข้อมูลเป็นจำนวนเท่า a * b = 50 หาร / ลดค่าของข้อมูลเป็นจำนวนเท่า b / a = 2 โมดูลัส% หารค่าเพื่อเอาเศษ b% a = 0 2. เปรียบเทียบ (Comparison operators) = เงื่อนไขข้อมูลด้านซ้าย และ ด้านขวา เท่ากัน (a = b) -> false! = เงื่อนไขข้อมูลด้านซ้าย และ ด้านขวา ไม่เท่ากัน (a! = b) -> true <> (a <> b) -> true > เงื่อนไขข้อมูลด้านซ้าย มากกว่า ด้านขวา (a > b) -> false < เงื่อนไขข้อมูลด้านซ้าย น้อยกว่า ด้านขวา (a < b) -> true >= เงื่อนไขข้อมูลด้านซ้าย มากกว่าหรือเท่ากับ ด้านขวา (a >= b) -> false <= เงื่อนไขข้อมูลด้านซ้าย น้อยกว่าหรือเท่ากับ ด้านขวา (a <= b) -> true!