ភាសាសំណួររចនាសម្ព័ន្ធបាន ផ្តល់ឱ្យអ្នកប្រើមូលដ្ឋាននូវយន្តការទាញយកទិន្នន័យដែលមានអនុភាពនិងអាចបត់បែនបាន - សេចក្តីថ្លែងការណ៍ SELECT ។ នៅក្នុងអត្ថបទនេះយើងនឹងមើលសំណុំបែបបទទូទៅនៃសេចក្តីថ្លែងការណ៍ SELECT និងបង្កើតសំណួរមូលដ្ឋានទិន្នន័យគំរូមួយចំនួនរួមគ្នា។ ប្រសិនបើនេះជាលើកដំបូងរបស់អ្នកចូលទៅក្នុងពិភពនៃភាសាសំណួររចនាសម្ព័ន្ធអ្នកប្រហែលជាចង់ពិនិត្យឡើងវិញនូវអត្ថបទ SQL Fundamentals មុននឹងបន្ត។
ប្រសិនបើអ្នកកំពុងស្វែងរកការរៀបចំមូលដ្ឋានទិន្នន័យថ្មីពីដំបូងការ បង្កើត Database និងតារាងនៅក្នុង SQL នឹងបង្ហាញពីចំណុចលោតដ៏ល្អ។
ឥឡូវអ្នកបានដុសធ្មេញលើមូលដ្ឋានគ្រឹះយើងចាប់ផ្តើមការរុករកសេចក្តីថ្លែងការណ៍ SELECT ។ ដូចគ្នានឹងមេរៀន SQL ពីមុនយើងនឹងបន្តប្រើសេចក្តីថ្លែងការណ៍ដែលអនុលោមតាមស្តង់ដារ ANSI SQL ។ អ្នកអាចនឹងពិគ្រោះឯកសារសម្រាប់ DBMS របស់អ្នកដើម្បីកំណត់ថាតើវាគាំទ្រជម្រើសកម្រិតខ្ពស់ដែលអាចបង្កើនប្រសិទ្ធភាពនិង / ឬប្រសិទ្ធិភាពនៃកូដ SQL របស់អ្នក។
ទម្រង់ទូទៅនៃសេចក្តីថ្លែងការណ៍ SELECT
សំណុំបែបបទទូទៅនៃសេចក្តីថ្លែងការណ៍ SELECT បង្ហាញខាងក្រោម:
SELECT select_list
ពី ប្រភព
លក្ខខណ្ឌនៅ ទីណា
GROUP BY ការបញ្ចេញមតិ
មាន លក្ខខណ្ឌ
ORDER BY ការបញ្ចេញមតិ
បន្ទាត់ទីមួយនៃសេចក្តីថ្លែងការណ៍ប្រាប់កម្មវិធី SQL ថាពាក្យបញ្ជានេះគឺជាសេចក្តីថ្លែងការណ៍ SELECT ហើយយើងចង់យកព័ត៌មានពីឃ្លាំងទិន្នន័យ។ បញ្ជីជ្រើសរើសអនុញ្ញាតឱ្យយើងបញ្ជាក់ប្រភេទព័ត៌មានដែលយើងចង់បាន។
ឃ្លា FROM ពី បន្ទាត់ទីពីរបញ្ជាក់ពីតារាងមូលដ្ឋានទិន្នន័យជាក់លាក់ដែលពាក់ព័ន្ធនិងឃ្លា WHERE ផ្តល់ឱ្យយើងនូវលទ្ធភាពកំណត់លទ្ធផលទៅកំណត់ត្រាទាំងនោះដែលបំពេញ លក្ខខណ្ឌ ដែលបានបញ្ជាក់។ ឃ្លាទាំងបីចុងក្រោយតំណាងឱ្យលក្ខណៈពិសេសកម្រិតខ្ពស់នៅខាងក្រៅវិសាលភាពនៃអត្ថបទនេះ - យើងនឹងស្វែងរកពួកវានៅក្នុងអត្ថបទ SQL នាពេលអនាគត។
វិធីងាយស្រួលបំផុតក្នុងការរៀន SQL គឺជាឧទាហរណ៍។ ដោយគិតពីចំនុចនេះចូរចាប់ផ្តើមស្វែងរកសំណួរមូលដ្ឋានទិន្នន័យមួយចំនួន។ នៅក្នុងអត្ថបទនេះយើងនឹងប្រើតារាងបុគ្គលិកពីមូលដ្ឋានទិន្នន័យធនធានមនុស្ស XYZ Corporation ដើម្បីបង្ហាញអំពីសំណួរទាំងអស់របស់យើង។ នេះជាតារាងទាំងមូល:
EmployeeID | នាមត្រកូល | នាមខ្លួន | ប្រាក់ខែ | រាយការណ៍ទៅ |
1 | ស្មី | ចន | 32000 | 2 |
2 | Scampi | ស៊ូ | 45000 | NULL |
3 | Kendall | ថម | 29500 | 2 |
4 | Jones | អាប្រាហាំ | 35000 | 2 |
5 | អាឡែន | Bill | 17250 | 4 |
6 | Reynolds | Allison | 19500 | 4 |
7 | ចនសុន | Katie | 21000 | 3 |
ទៅយកតារាងទាំងមូល
នាយកធនធានមនុស្សរបស់សាជីវកម្ម XYZ បានទទួលរបាយការណ៍ប្រចាំខែដែលផ្តល់ប្រាក់ខែនិងរាយការណ៍ព័ត៌មានសម្រាប់បុគ្គលិកក្រុមហ៊ុននីមួយៗ។ ជំនាន់នៃរបាយការណ៍នេះគឺជាឧទាហរណ៍នៃសំណុំបែបបទសាមញ្ញបំផុតនៃសេចក្តីថ្លែងការណ៍ SELECT ។ វាគ្រាន់តែយកព័ត៌មានទាំងអស់ដែលមាននៅក្នុងតារាងមូលដ្ឋានទិន្នន័យ - គ្រប់ជួរឈរនិងគ្រប់ជួរ។ នេះជាសំណួរដែលនឹងសម្រេចលទ្ធផលនេះ:
ជ្រើសរើស *
ពីបុគ្គលិក
ល្អណាស់មែនទេ? សញ្ញាផ្កាយ (*) ដែលលេចឡើងនៅក្នុងបញ្ជីជ្រើសរើសគឺជាអក្សរធំដែលត្រូវបានប្រើដើម្បីជូនដំណឹងទៅមូលដ្ឋានទិន្នន័យថាយើងចង់យកព័ត៌មានពីជួរឈរទាំងអស់នៅក្នុងតារាងនិយោជិកដែលបានកំណត់នៅក្នុងឃ្លា FROM ។ យើងចង់ទាញយកព័ត៌មានទាំងអស់នៅក្នុងមូលដ្ឋានទិន្នន័យដូច្នេះវាមិនចាំបាច់ប្រើឃ្លា WHERE ដើម្បីដាក់កម្រិតជួរដេកដែលបានជ្រើសរើសពីតារាងទេ។
នេះជាលទ្ធផលនៃសំណួររបស់យើងដូចខាងក្រោម:
EmployeeID | នាមត្រកូល | នាមខ្លួន | ប្រាក់ខែ | រាយការណ៍ទៅ |
---------- | -------- | --------- | ------ | --------- |
1 | ស្មី | ចន | 32000 | 2 |
2 | Scampi | ស៊ូ | 45000 | NULL |
3 | Kendall | ថម | 29500 | 2 |
4 | Jones | អាប្រាហាំ | 35000 | 2 |
5 | អាឡែន | Bill | 17250 | 4 |
6 | Reynolds | Allison | 19500 | 4 |
7 | ចនសុន | Katie | 21000 | 3 |