រចនាសំណួរ
The ទិដ្ឋភាពរចនាសំណួរ អនុញ្ញាតអ្នកឲ្យបង្កើតនិងកែសម្រួលសំណួរមូលដ្ឋានទិន្ន័យ ។
មូលដ្ឋានទិន្នន័យភាគច្រើនប្រើសំណួរដើម្បីត្រង ឬតម្រៀបតារាងមូលដ្ឋានទិន្នន័យ ដើម្បីបង្ហាញកំណត់ត្រាលើកុំព្យូទ័ររបស់អ្នក ។ ទិដ្ឋភាពផ្តល់នូវមុខងារដូចសំណួរដែរ ប៉ុន្តែបង្ហាញនៅខាងម៉ាស៊ីនបម្រើ ។ បើមូលដ្ឋានទិន្នន័យរបស់អ្នកស្ថិតនៅលើម៉ាស៊ីនបម្រើដែលគាំទ្រទិដ្ឋភាព នោះអ្នកអាចប្រើទិដ្ឋភាពដើម្បីត្រងកំណត់ត្រាលើម៉ាស៊ីនបម្រើដើម្បីបង្កើនល្បឿនបង្ហាញ ។
ជ្រើសពាក្យបញ្ជា បង្កើតទិដ្ឋភាព ពីទំព័រថេប តារាង នៃឯកសារមូលដ្ឋានទិន្នន័យ អ្នកនឹងឃើញបង្អួច រចនាទិដ្ឋភាព ដែលដូចគ្នានិងបង្អួច រចនាសំណួរ ដែលបានពណ៌នាទីនេះ ។
បង្ល់បង្អួចរចនាសំណួរត្រូវបានរក្សាទុកជាមួយសំណួរដែលបានបង្កើត ប៉ុន្តែមិនអាចរក្សាទុកជាមួយទិដ្ឋភាពដែលបានបង្កើត ។
ទិដ្ឋភាពរចនា
ដើម្បីបង្កើតសំណួរមួយ ចុចរូបតំណាងសំណួរ ក្នុងឯកសារមូលដ្ឋានទិន្នន័យ បន្ទាប់មកចុច បង្កើតសំណួរក្នុងទិដ្ឋភាពរចនា ។
ស្លាបព្រិលខាងក្រោមនៃទិដ្ឋភាពរចនា គឺជាកន្លែងដែលអ្នក កំណត់ សំណួរ ។ ដើម្បីកំណត់សំណួរ បញ្ជាក់មូលដ្ឋានទិន្នន័យ field names ដើម្បីដាក់បញ្ចូល និង លក្ខខណ្ឌ ដើម្បីបង្ហាញវាល ។ ដើម្បីរៀបចំជួរឈរឡើងវិញនៅក្នុងស្លាបព្រិលខាងក្រោមនៃទិដ្ឋភាពរចនា អូសបឋមកថាជួរឈរទៅទីតាំងថ្មី ឬជ្រើសជួរឈរ និងចុច Commandបញ្ជា(Ctrl)+គ្រាប់ចុចព្រួញ ។
នៅផ្នែកខាងលើនៃបង្អួចទិដ្ឋភាពរចនាសំណួរ រូបតំណាង នៃរបារ រចនាសំណួរ និងរបារ រចនាត្រូវបានបង្ហាញ ។
បើអ្នកចង់សាកល្បងសំណួរមួយ សូមចុចឈ្មោះសំណួរទ្វេដងក្នុងឯកសារមូលដ្ឋានទិន្នន័យ ។ លទ្ធផលសំណួរនឹងត្រូវបានបង្ហាញក្នុងតារាងមួយ ស្រដៀងទៅនឹងទិដ្ឋភាពប្រភពទិន្នន័យដែរ ។ ចំណាំ ៖ តារាងត្រូវបានបង្ហាញបណ្តោះអាសន្នប៉ុណ្ណោះ ។
សោនៅក្នុងទិដ្ឋភាពរចនាសសំណួរ
គ្រាប់ចុច |
អនុគមន៍ |
F4 |
មើលជាមុន |
F5 |
រត់សំណួរ |
F7 |
បន្ថែមតារងាឬសំណួរ |
រកមើល
When you open the query design for the first time, you see a dialog in which you must first select the table or query that will be the basis for your new query.
ចុចទ្វេដងលើវាលដើម្បីបន្ថែមពួកវាទៅសំណួរ ។ អូស និងទម្លាក់ដើម្បីកំណត់ទំនាក់ទំនង ។
ខណៈពេលរចនាសំណួរ អាចមិនអាចកែប្រែតារាងដែលបានជ្រើសបានទេ ។
យកតារាងចេញ
ដើម្បីយកតារាងចេញពីទិដ្ឋភាពរចនា សូមចុចស៊ុមខាងលើនៃបង្អួចតារាង ហើយបង្ហាញម៉ឺនុយបរិបទ ។ អ្នកអាចប្រើពាក្យបញ្ជា លុប ដើម្បីយកតារាងចេញពីទិដ្ឋភាពរចនា ។ ជម្រើសមួយទៀត គឺត្រូវចុចគ្រាប់ចុចលុប (Delete) ។
ផ្លាស់ទីតារាង និងកែប្រែទំហំតារាង
អ្នកអាចប្តួរទំហំ និងរៀបចំតារាងតាមចំណង់ចំណូលចិត្តរបស់អ្នក ។ ដើម្បីផ្លាស់ទីតារាង សូមអូសស៊ុមខាងលើទៅទីតាំងដែលចង់បាន ។ ពង្រីក ឬបន្ថយទំហំដែលតារាងត្រូវបានបង្ហាញ ដោយដាក់ទស្សន៍ទ្រនិចកណ្តុរលើស៊ុមមួយ ឬលើជ្រុងមួយ និងអូសតារាងរហូតដល់ទំហំដែលចង់បាន ។
ទំនាក់ទំនងតារាង
បើមានទំនាក់ទំនងទិន្នន័យរវាងឈ្មោះវាលមួយក្នុងតារាងមួយ និងឈ្មោះវាលមួយក្នុងតារាងមួយទៀត អ្នកអាចប្រើទំនាក់ទំនងទាំងនេះសម្រាប់សំណួររបស់អ្នក ។
ឧទាហរណ៍ បើអ្នកមានសៀវភៅបញ្ជីមួយសម្រាប់ទំនិញដែលសម្គាល់ដោយលេខទំនិញមួយ និងសៀវភៅបញ្ជីសម្រាប់អតិថិជនដែលអ្នកកត់ត្រាទំនិញទាំងអស់ដែលអតិថិជនបញ្ជាទិញ ដោយប្រើលេខទំនិញដែលត្រូវគ្នា នោះនឹងមានទំនាក់ទំនងមួយរវាងវាលទិន្នន័យ "លេខទំនិញ" ពីរ ។ ឥឡូវបើអ្នកចង់បង្កើតសំណួរមួយដែលត្រឡប់ទំនិញទាំងអស់ដែលអតិថិជនម្នាក់បានបញ្ជាទិញ នោះអ្នកត្រូវទាញយកទិន្នន័យពីសៀវភៅបញ្ជីពីរ ។ ដើម្បីធ្វើដូច្នេះ អ្នកត្រូវប្រាប់ LibreOffice ពីទំនាក់ទំនងដែលមានរវាងទិន្នន័យក្នុងសៀវភៅបញ្ជីពីរ ។
ដើម្បីធ្វើដូច្នេះ សូមចុចឈ្មោះវាលមួយក្នុងតារាងមួយ (ឧទាហរណ៍ ឈ្មោះវាល "លេខវត្ថុ" ពីតារាង "អតិថិជន") សង្កត់ប៊ូតុងកណ្តុរ ហើយបន្ទាប់មកអូសឈ្មោះវាលទៅឈ្មោះវាលនៃតារាងផ្សេងទៀត ("លេខវត្ថុ" ពីតារាង "វត្ថុ") ។ នៅពេលអ្នកលែងកណ្តុរ បន្ទាត់មួយដែលតភ្ជាប់វាលពីរក្នុងបង្អួចពីរ នឹងលេចឡើង ។ លក្ខខណ្ឌត្រូវគ្នាដែលមាតិកានៃឈ្មោះវាលពីរត្រូវតែដូចគ្នា ត្រូវបានបញ្ចូលក្នុងសំណួរ SQL លទ្ធផល ។
ការបង្កើតនៃសំណួរមួយដែលត្រូវបានពឹងផ្អែកលើសន្លឹកទាក់ទងគ្នាច្រើន អាចធ្វើបានលុះត្រាតែអ្នកប្រើ LibreOffice ជាចំណុចប្រទាក់សម្រាប់មូលដ្ឋានទិន្នន័យទំនាក់ទំនងមួយ ។
អ្នកមិនអាចចូលដំណើរការតារាងពីមូលដ្ឋានទិន្នន័យខុសគ្នាក្នុងសំណួរមួយបានទេ ។ សំណួរដែលជាប់ទាក់ទងនឹងតារាងច្រើន អាចត្រូវបានបង្កើតតែក្នុងមូលដ្ឋានទិន្នន័យមួយប៉ុណ្ណោះ ។
ការបញ្ជាក់ប្រភេទតំណ
បើអ្នកចុចទ្វេដងលើបន្ទាត់ដែលតភ្ជាប់វាលពីរដែលបានតភ្ជាប់ ឬហៅពាក្យបញ្ជាម៉ឺនុយ បញ្ចូល - ទំនាក់ទំនងថ្មី អ្នកអាចបញ្ជាក់ប្រភេទតំណក្នុងប្រអប់ ទំនាក់ទំនង ។
ច្រាសមកវិញ សង្កត់ ថេប រហូតដល់បន្ទាត់ត្រូវបានជ្រើស បន្ទាប់មកសង្កត់ ប្ដូរ(Shift)+F10 ដើម្បីបង្ហាញម៉ឺនុយបរិបទ និងជ្រើសពាក្យបញ្ជា កែសម្រួល ។ មូលដ្ឋានទិន្នន័យមួយចំនួនគាំទ្រតែសំណុំរងនៃប្រភេទចូលរួមដែលអាចតែប៉ុណ្ណោះ ។
ការលុបទំនាក់ទំនង
ដើម្បីលុបទំនាក់ទំនងមួយរវាងតារាងពីរ ចុចលើបន្ទាត់តភ្ជាប់ ហើយបន្ទាប់មកចុចគ្រាប់ចុច លុប (Delete) ។
ជាជម្រើស លុបធាតុនិមួយៗក្នុងវាលដែលពាក់ព័ន្ធក្នុងប្រអប់ប្រអប់ទំនាក់ទំនង ។ ឬចុចថេប (Tab) រហូតដល់ព្រួញតភ្ជាប់ត្រូវបានបង្ហាញ និងបន្លិច បន្ទាប់មកចុច ប្ដូរ(Shift)+F10 ដើម្បីបើកម៉ឺនុយបរិបទ ហើយជ្រើសពាក្យបញ្ជាលុប ។
កំណត់សំណួរ
ជ្រើសលក្ខខណ្ឌដើម្បីកំណត់សំណួរ ។ ជួរឈរនីមួយៗនៃតារាងរចនាព្រមទទួលវាលទិន្នន័យមួយសម្រាប់សំណួរ ។ លក្ខខណ្ឌក្នុងជួរដេកមួយត្រូវបានភ្ជាប់ដោយប៊ូលីន AND មួយ ។
បញ្ជាក់ឈ្មោះវាល
ដំបូង ជ្រើសឈ្មោះវាលទាំងអស់ពីតារាងដែលអ្នកចង់បន្ថែមទៅសំណួរ ។ អ្នកអាចធ្វើដូច្នេះដោយប្រើអូស និងទម្លាក់ ឬដោយចុចទ្វេដងលើឈ្មោះវាលមួយក្នុងបង្អួចតារាង ។ ជាមួយវិធីសាស្ត្រអូស និងទម្លាក់ សូមប្រើកណ្តុរដើម្បីអូសឈ្មោះវាលមួយពីបង្អួចតារាង ទៅក្នុងតំបន់ខាងក្រោមនៃរចនាសំណួរ ។ នៅពេលអ្នកធ្វើដូច្នេះ អ្នកអាចសម្រេចចិត្តថាតើជួរឈរណាមួយ ដែលអ្នកចង់បន្ថែមវាលទៅ ។ ជ្រើសឈ្មោះវាលមួយដោយចុចទ្វេដង ។ នោះវានឹងត្រូវបានបន្ថែមទៅជួរឈរទទេបន្ទាប់ ។
ការលុបឈ្មោះវាល
ដើម្បីយកឈ្មោះវាលមួយចេញពីសំណួរ សូមចុចក្បាលជួរឈរនៃវាល និងជ្រើសពាក្យបញ្ជា លុប លើម៉ឺនុយបរិបទសម្រាប់ជួរឈរ ។
រក្សាទុកសំណួរ
ប្រើរូបតំណាង រក្សាទុក លើរបារស្តង់ដារ ដើម្បីរក្សាទុកសំណួរ ។ អ្នកនឹងឃើញប្រអប់មួយ ដែលសុំឲ្យអ្នកបញ្ចូលឈ្មោះមួយសម្រាប់សំណួរ ។ បើមូលដ្ឋានទិន្នន័យគាំទ្រគ្រោងការណ៍ នោះអ្នកក៏អាចបញ្ចូលគ្រោងការណ៍មួយផងដែរ ។
គ្រោងការណ៍
បញ្ចូលឈ្មោះគ្រោងការណ៍ដែលត្រូវបានផ្តល់តម្លៃទៅសំណួរ ឬទិដ្ឋភាពតារាង ។
ឈ្មោះសំណួរ ឬឈ្មោះទិដ្ឋភាពតារាង
បញ្ចូលឈ្មោះសំណួរ ឬទិដ្ឋភាពតារាង ។
ការត្រងទិន្នន័យ
ដើម្បីត្រងទិន្នន័យសំណួរ កំណត់ចំណង់ចំណូលចិត្តដែលចង់បាន ក្នុងតំបន់ខាងក្រោមនៃទិដ្ឋភាពរចនា ។ មានបន្ទាត់ដូចខាងក្រោម ៖
វាល
បញ្ចូលឈ្មោះវាលទិន្នន័យ ដែលអ្នកបានយោងទៅក្នុងសំណួរ ។ កំណត់ទាំងអស់ដែលបានធ្វើក្នុងជួរដេកខាងក្រោម នឹងយោងទៅវាលនេះ ។ បើអ្នកធ្វើឲ្យក្រឡាមួយសកម្មដោយចុចកណ្តុរម្តង នោះអ្នកនឹងឃើញប៊ូតុងព្រួញមួយ ដែលអាចឲ្យអ្នកជ្រើសវាលមួយ ។ ជម្រើស "ឈ្មោះតារាង.*" នឹងជ្រើសវាលទិន្នន័យទាំងអស់ ហើយលក្ខណៈវិនិច្ឆ័យមានសុពលភាពសម្រាប់វាលតារាងទាំងអស់ ។
ឈ្មោះក្លែងក្លាយ
បញ្ជាក់ឈ្មោះក្លែងក្លាយមួយ ។ ឈ្មោះក្លែងក្លាយនឹងត្រូវបានរាយក្នុងសំណួរជំនួសឲ្យឈ្មោះវាល ។ នេះបង្កលក្ខណៈងាយស្រួលក្នុងការប្រើស្លាកជួរឈរដែលកំណត់ដោយអ្នកប្រើ ។ ឧទាហរណ៍ បើវាលទិន្នន័យមានឈ្មោះ PtNo ហើយអ្នកចង់ឲ្យមាន PartNum ក្នុងសំណួរជំនួសឲ្យឈ្មោះនោះ សូមបញ្ចូល PartNum ជាឈ្មោះក្លែងក្លាយ ។
ក្នុងសេចក្តីថ្លែងការណ៍ SQL ឈ្មោះក្លែងក្លាយត្រូវបានកំណត់ដូចខាងក្រោម ៖
SELECT ជួរឈរ AS ឈ្មោះក្លែងក្លាយ FROM តារាង ។
ឧទាហរណ៍ ៖
SELECT "PtNo" AS "PartNum" FROM "Parts"
តារាង
តារាងមូលដ្ឋានទិន្នន័យត្រូវគ្នានៃវាលទិន្នន័យដែលបានជ្រើស ត្រូវបានរាយនៅទីនេះ ។ បើអ្នកធ្វើឲ្យក្រឡាមួយសកម្មដោយចុចកណ្តុរម្តង ព្រួញមួយនឹងលេចឡើងដែលអាចឲ្យអ្នកជ្រើសតារាងមួយទៀតនៃសំណួរបច្ចុប្បន្ន ។
តម្រៀប
ប្រសិនបើអ្នកចុចក្រឡា នោះអ្នកអាចជ្រើសក្នុងចំណោមជម្រើសតម្រៀប ៖ លំដាប់ឡើង លំដាប់ចុះ និងមិនតម្រៀប ។ វាលអត្ថបទនឹងត្រូវបានតម្រៀបតាមអក្សរក្រម និងវាលលេខត្រូវបានតម្រៀបតាមលេខរៀង ។ ចំពោះមូលដ្ឋានទិន្នន័យភាគច្រើន អ្នកគ្រប់គ្រងអាចកំណត់ជម្រើសតម្រៀប ។
មើលឃើញ
បើអ្នកសម្គាល់លក្ខណសម្បត្តិ មើលឃើញ សម្រាប់វាលទិន្នន័យមួយ វាលនោះនឹងអាចមើលឃើញក្នុងសំណួរ។ បើអ្នកប្រើតែវាលទិន្នន័យមួយ ដើម្បីសរសេរលក្ខខណ្ឌមួយ នោះអ្នកមិនចាំបាច់បង្ហាញវាទេ ។
លក្ខណៈវិនិច្ឆ័យ
បញ្ជាក់លក្ខណៈវិនិច្ឆ័យ ដែលមាតិកានៃវាលទិន្នន័យគួរត្រូវបានត្រង ។
ឬ
នៅទីនេះអ្នកអាចបញ្ចូលលក្ខណៈវិនិច្ឆ័យបន្ថែមទៀត សម្រាប់តម្រងក្នុងបន្ទាត់នីមួយៗ ។ លក្ខណៈវិនិច្ឆ័យច្រើនក្នុងជួរឈរមួយ នឹងត្រូវបានតភ្ជាប់ដោយតំណ ឬមួយ ។
អ្នកក៏អាចប្រើម៉ឺនុយបរិបទនៃក្បាលបន្ទាត់ក្នុងតំបន់ខាងក្រោមនៃរចនាសំណួរ ដើម្បីបញ្ចូលបន្ទាត់មួយទៀតសម្រាប់អនុគមន៍ ៖
អនុគមន៍
អ្នកអាចរត់អនុគមន៍អាស្រ័យលើមូលដ្ឋានទិន្នន័យ ។
ប្រសិនបើអ្នកកំពុងធ្វើការជាមួយមូលដ្ឋានទិន្នន័យ HSQL ប្រអប់បញ្ជីនៅក្នុងជួរដេក អនុគមន៍ ផ្ដល់ឲ្យអ្នកនូវជម្រើសដូចខាងក្រោម ៖
ជម្រើស |
SQL |
បែបផែន |
គ្មានអនុគមន៍ |
គ្មានអនុគមន៍នឹងត្រូវបានប្រតិបត្តិ ។ |
|
មធ្យម |
AVG |
គណនាមធ្យមនព្វន្តនៃវាលមួយ ។ |
រាប់ |
COUNT |
កំណត់ចំនួនកំណត់ត្រាក្នុងតារាង ។ វាលទទេអាចត្រូវបានរាប់ (a) ឬមិនរាប់ (b) ។ a) COUNT(*) ៖ ការហុចសញ្ញាផ្កាយជាអាគុយម៉ង់ នឹងរាប់កំណត់ត្រាទាំងអស់ក្នុងតារាង ។ b) COUNT(ជួរឈរ) ៖ ការហុចឈ្មោះវាលជាអាគុយម៉ង់មួយ នឹងរាប់តែវាលណាដែលឈ្មោះក្រឡាពាក់ព័ន្ធមានតម្លៃមួយ ។ តម្លៃគ្មានសោះ (វាលទទេ) នឹងមិនត្រូវបានរាប់ទេ ។ |
អតិបរមា |
MAX |
កំណត់តម្លៃខ្ពស់បំផុតនៃវាលមួយ ។ |
អប្បបរមា |
MIN |
កំណត់តម្លៃទាបបំផុតនៃវាលមួយ ។ |
បូក |
SUM |
គណនាផលបូកតម្លៃនៃវាលដែលទាក់ទង ។ |
ដាក់ជាក្រុម |
GROUP BY |
ដាក់ទិន្នន័យសំណួរជាក្រុមតាមឈ្មោះវាលដែលបានជ្រើស ។ អនុគមន៍ត្រូវបានប្រតិបត្តិទៅតាមក្រុមដែលបានបញ្ជាក់ ។ក្នុង SQL ជម្រើសនេះត្រូវគ្នាទៅនឹងឃ្លា GROUP BY ។ បើលក្ខណៈវិនិច្ឆ័យមួយត្រូវបានបន្ថែម នោះធាតុនេះនឹងលេចឡើងក្នុង SQL HAVING ។ |
អ្នកក៏អាចបញ្ចូលការហៅអនុគមន៍ដោយផ្ទាល់ទៅក្នុងសេចក្តីថ្លែងការណ៍ SQL ។ វាក្យសម្ពន្ធគឺ ៖
SELECT FUNCTION(ជួរឈរ) FROM តារាង ។
ឧទាហរណ៍ ការហៅអនុគមន៍ក្នុង SQL សម្រាប់ប្រមាណវិធីបូកគឺ ៖
SELECT SUM("តម្លៃ") FROM "ទំនិញ" ។
លើកលែងសម្រាប់អនុគមន៍ ក្រុម អនុគមន៍ខាងលើត្រូវបានហៅថាអនុគមន៍ផ្ដុំ ។ ទាំងនេះគឺជាអនុគមន៍ដែលគណនាទិន្នន័យ ដើម្បីបង្កើតសេចក្ដីសង្ខេបពីលទ្ធផល ។ អនុគមន៍បន្ថែមដែលមិនត្រូវបានរាយនៅក្នុងប្រអប់បញ្ជីអាចធ្វើបានដែរ ។ ទាំងនេះអាស្រ័យលើប្រព័ន្ធមូលដ្ឋានទិន្នន័យជាក់លាក់ដែលកំពុងប្រើ និងនៅលើស្ថានភាពបច្ចុប្បន្នរបស់កម្មវិធីបញ្ជាមូលដ្ឋាន ។
ដើម្បីប្រើអនុគមន៍បន្ថែមដែលមិនត្រូវបានរាយនៅក្នុងប្រអប់បញ្ជី អ្នកត្រូវតែបញ្ចូលពួកវាក្រោម វាល ។
អ្នកក៏អាចផ្តល់ឈ្មោះក្លែងក្លាយទៅការហៅអនុគមន៍ ។ បើសំណួរមិនត្រូវបានបង្ហាញក្នុងក្បាលជួរឈរ សូមបញ្ចូលឈ្មោះដែលចង់បានក្រោម ឈ្មោះក្លែងក្លាយ ។
អនុគមន៍ត្រូវគ្នាក្នុងសេចក្តីថ្លែងការណ៍ SQL គឺ ៖
SELECT FUNCTION() AS ឈ្មោះក្លែងក្លាយ FROM តារាង
ឧទាហរណ៍ ៖
SELECT COUNT(*) AS "ចំនួន" FROM "វត្ថុ"
បើអ្នករត់អនុគមន៍នេះ អ្នកនឹងមិនអាចបញ្ចូលជួរឈរបន្ថែមទៀតសម្រាប់សំណួរបានទេ ក្រៅពីទទួលបានតែជួរឈរទាំងនេះជាអនុគមន៍ "ដាក់ជាក្រុម" ។
ឧទាហរណ៍
ក្នុងឧទាហរណ៍ខាងក្រោម សំណួរមួយត្រូវបានរត់កាត់តារាងពីរ ៖ តារាង "វត្ថុ" ដែលមានវាល "លេខវត្ថុ" និងតារាង "អ្នកផ្គត់ផ្គង់" ដែលមានវាល "ឈ្មោះអ្នកផ្គត់ផ្គង់" ។ លើសពីនេះទៀត តារាងទាំងពីរមានឈ្មោះវាលរួម "លេខអ្នកផ្គត់ផ្គង់" ។
ទាមទារជំហានដូចខាងក្រោម ដើម្បីបង្កើតសំណួរមួយដែលមានអ្នកផ្គត់ផ្គង់ទាំងអស់ ដែលចែកចាយច្រើនជាងបីដង ។
-
បញ្ចូលតារាង "វត្ថុ" និង"អ្នកផ្គត់ផ្គង់" ក្នុងរចនាសំណួរ ។
-
តភ្ជាប់វាល "លេខអ្នកផ្គត់ផ្គង់" នៃតារាងពីរ បើមិនទាន់មានទំនាក់ទំនងប្រភេទនេះ ។
-
ចុចទ្វេដងលើវាល "លេខវត្ថុ" ពីតារាង "វត្ថុ" ។ បង្ហាញបន្ទាត់ អនុគមន៍ ដោយប្រើម៉ឺនុយបរិបទ និងជ្រើសអនុគមន៍ Count ។
-
បញ្ចូល >3 ជាលក្ខណៈវិនិច្ឆ័យ និងធ្វើឲ្យវាលដែលមើលឃើញប្រើលែងបាន ។
-
ចុចទ្វេដងលើវាល "ឈ្មោះអ្នកផ្គត់ផ្គង់" ក្នុងតារាង "អ្នកផ្គត់ផ្គង់" និងជ្រើសអនុគមន៍ Group ។
-
រត់សំណួរ ។
បើវាល "តម្លៃ" (សម្រាប់តម្លៃនៃទំនិញនីមួយៗ) និង"លេខអ្នកផ្គត់ផ្គង់" (សម្រាប់អ្នកផ្គត់ផ្គង់ទំនិញ) មានក្នុងតារាង "វត្ថុ" នោះអ្នកអាចទទួលបានតម្លៃមធ្យមនៃវត្ថុ ដែលអ្នកផ្គត់ផ្គង់ម្នាក់ផ្តល់ឲ្យ ដោយប្រើសំណួរខាងក្រោម ៖
-
បញ្ចូលតារាង "វត្ថុ" ទៅក្នុងរចនាសំណួរ ។
-
ចុចទ្វេដងលើវាល "តម្លៃ" និង"លេខអ្នកផ្គត់ផ្គង់" ។
-
ធ្វើឲ្យបន្ទាត់ អនុគមន៍ ប្រើបាន និងជ្រើសអនុគមន៍ Average ពីវាល "តម្លៃ" ។
-
អ្នកក៏អាចបញ្ចូល "មធ្យម" ក្នុងបន្ទាត់សម្រាប់ឈ្មោះក្លែងក្លាយ (គ្មានសញ្ញាសម្រង់) ។
-
ជ្រើស ដាក់ជាក្រុម ពីវាល "លេខអ្នកផ្គត់ផ្គង់" ។
-
រត់សំណួរ ។
មានពាក្យបញ្ជាម៉ឺនុយបរិបទ និងនិមិត្តសញ្ញាដូចខាងក្រោម ៖
អនុគមន៍
បង្ហាញ ឬលាក់ជួរដេកមួយសម្រាប់ជម្រើសនៃអនុគមន៍ ។
ឈ្មោះតារាង
បង្ហាញ ឬលាក់ជួរដេកសម្រាប់ឈ្មោះតារាង ។
ឈ្មោះក្លែងក្លាយ
បង្ហាញ ឬលាក់ជួរដេកសម្រាប់ឈ្មោះក្លែងក្លាយ ។
តម្លៃខុសគ្នា
អនុវត្តតែតម្លៃខុសគ្នាប៉ុណ្ណោះទៅសំណួរ ។ នេះនឹងអនុវត្តទៅកំណត់ត្រាដែលមានទិន្នន័យ ដែលលេចឡើងច្រើនដងក្នុងវាលដែលបានជ្រើស ។ បើពាក្យបញ្ជា តម្លៃខុសគ្នា សកម្ម នោះអ្នកនឹងឃើញតែកំណត់ត្រាមួយប៉ុណ្ណោះក្នុងសំណួរ (DISTINCT) ។ បើពុំនោះសោត អ្នកនឹងឃើញកំណត់ត្រាទាំងអស់ដែលត្រូវគ្នានឹងលក្ខណៈវិនិច្ឆ័យសំណួរ (ALL) ។
ឧទាហរណ៍ បើមានឈ្មោះ "Smith" ច្រើនដងក្នុងមូលដ្ឋានទិន្នន័យអាសយដ្ឋានរបស់អ្នក នោះអ្នកអាចជ្រើសពាក្យបញ្ជា តម្លៃខុសគ្នា ដើម្បីបញ្ជាក់ក្នុងសំណួរដែលនឹងមានឈ្មោះ "Smith" តែម្តងគត់ ។
សម្រាប់សំណួរមួយដែលទាក់ទងនឹងវាលច្រើន បន្សំនៃតម្លៃពីវាលទាំងអស់ត្រូវមានតម្លៃតៃមួយ ដូច្នេះទើបលទ្ធផលអាចត្រូវបានបង្កើតពីកំណត់ត្រាជាក់លាក់មួយ ។ ឧទាហរណ៍ អ្នកមាន "Smith នៅ ឈីកាហ្គោ" ម្តងក្នុងសៀវភៅអាសយដ្ឋានរបស់អ្នក និងមាន "Smith នៅ ឡុងដុង" ពីរដង ។ ជាមួយនឹងពាក្យបញ្ជា តម្លៃខុសគ្នា សំណួរនឹងប្រើវាលពីរ "នាមត្រកូល" និង"ទីក្រុង" ហើយត្រឡប់លទ្ធផលសំណួរ "Smith នៅ ឈីកាហ្គោ" ម្តង និង"Smith នៅ ឡុងដុង" ម្តង ។
ក្នុង SQL ពាក្យបញ្ជានេះត្រូវគ្នាទៅនឹង DISTINCT ។
លីមីត
អនុញ្ញាតឲ្យអ្នកកំណត់ចំនួនកំណត់ត្រាអតិបរមាជាមួយសំណួរដែលបានត្រឡប់។
ប្រសិនបើបានបន្ថែម ដែនកំណត់, អ្នកនឹងទទួលបានជួរដេកជាច្រើនដូចទៅនឹងចំនួនដែលអ្នកបានបញ្ជាក់។ បើមិនដូច្នោះទេ អ្នកនឹងឃើញកំណត់ត្រាទាំងអស់ដែលត្រូវគ្នាជាមួយលក្ខណវិនិច្ឆ័យសំណួរ។
ការសរសេរលក្ខខណ្ឌតម្រង
នៅពេលសរសេរលក្ខខណ្ឌតម្រង អ្នកអាចប្រើសញ្ញាប្រមាណវិធី និងពាក្យបញ្ជាជាច្រើន ។ ក្រៅពីសញ្ញាប្រមាណវិធីទំនាក់ទំនង មានពាក្យបញ្ជាដែលបញ្ជាក់ SQL ដែលសួរមាតិកានៃវាលមូលដ្ឋានទិន្នន័យ ។ បើអ្នកប្រើពាក្យបញ្ជាទាំងនេះក្នុងវាក្យសម្ព័ន្ធ LibreOffice នោះ LibreOffice នឹងបម្លែងវាក្យសម្ព័ន្ធទាំងនេះដោយស្វ័យប្រវត្តិទៅជាវាក្យសម្ព័ន្ធ SQL ដែលត្រូវគ្នា ។ អ្នកក៏អាចបញ្ចូលពាក្យបញ្ជា SQL ដោយផ្ទាល់ផងដែរ ។ តារាងខាងក្រោមផ្តល់នូវទិដ្ឋភាពទូទៅនៃសញ្ញាប្រមាណវិធី និងពាក្យបញ្ជា ៖
សញ្ញាប្រមាណវិធី |
អត្ថន័យ |
លក្ខខណ្ឌពិតបើ... |
= |
ស្មើទៅនឹង |
... មាតិកាវាលដូចគ្នាបេះបិទនឹងកន្សោមដែលបានចង្អុលបង្ហាញ ។ សញ្ញាប្រមាណវិធី = នឹងមិនត្រូវបានបង្ហាញក្នុងវាលសំណួរទេ ។ បើអ្នកបញ្ចូលតម្លៃមួយដោយមិនមានសញ្ញាប្រមាណវិធី នោះសញ្ញាប្រមាណវិធី = នឹងត្រូវបានដាក់ឲ្យប្រើដោយស្វ័យប្រវត្តិ ។ |
<> |
មិនស្មើ |
... មាតិកាវាលមិនត្រូវគ្នាទៅនឹងកន្សោមដែលបានបញ្ជាក់ ។ |
> |
ធំជាង |
... មាតិកាវាលធំជាងកន្សោមដែលបានបញ្ជាក់ ។ |
< |
តូចជាង |
... មាតិកានៃវាលតូចជាងកន្សោមដែលបានបញ្ជាក់ ។ |
>= |
ធំជាង ឬស្មើ |
... មាតិកាវាលធំជាង ឬស្មើកន្សោមដែលបានបញ្ជាក់ ។ |
<= |
តូចជាង ឬស្មើ |
... មាតិកាវាលតូចជាង ឬស្មើកន្សោមដែលបានបញ្ជាក់ ។ |
ឧទាហរណ៍
='Ms.' |
ត្រឡប់ឈ្មោះវាលជាមួយនឹងមាតិកាវាល "អ្នកនាង" |
<'2001-01-10' |
returns dates that occurred before January 10, 2001 |
LIKE 'g?ve' |
ត្រឡប់ឈ្មោះវាលដែលមានមាតិកាដូចជា "give" និង "gave" ។ |
LIKE 'S*' |
ត្រឡប់វាលទិន្នន័យដែលមានមាតិកាវាល ដូចជា "Sun" ។ |
BETWEEN 10 AND 20 |
ត្រឡប់ឈ្មោះវាលជាមួយនឹងមាតិកាវាលចន្លោះតម្លៃ 10 និង 20 ។ (វាលអាចជាវាលអត្ថបទ ឬវាលលេខ) ។ |
IN (1; 3; 5; 7) |
ត្រឡប់ឈ្មោះវាលដែលមានតម្លៃ 1, 3, 5, 7 ។ ឧទាហរណ៍ បើឈ្មោះវាលមានលេខធាតុមួយ នោះអ្នកអាចបង្កើតសំណួរមួយដែលត្រឡប់ធាតុដែលមានលេខដែលបានបញ្ជាក់ ។ |
NOT IN ('Smith') |
ត្រឡប់ឈ្មោះវាលដែលមិនមាន "Smith" ។ |
Like Escape Sequence: {escape 'escape-character'}
ឧទាហរណ៍ ៖ select * from "វត្ថុ" where "ឈ្មោះវត្ថុ" like 'The *%' {escape '*'}
ឧទាហរណ៍នឹងផ្តល់ឲ្យអ្នកនូវធាតុទាំងអស់ ដែលឈ្មោះធាតុចាប់ផ្តើមដោយ 'The *' ។ នេះមានន័យថា អ្នកក៏អាចស្វែងរកតួអក្សរដែលត្រូវបានបកប្រែជាកន្លែងដាក់ ដូចជា *, ?, _, % ឬសញ្ញាចុច ។
Outer Join Escape Sequence: {oj outer-join}
ឧទាហរណ៍ ៖ select "ទំនិញ".* from {oj "វត្ថុ" LEFT OUTER JOIN "បញ្ជាទិញ" ON "វត្ថុ"."លេខ"="បញ្ជាទិញ".ANR}
ការសួរវាលអត្ថបទ
ដើម្បីសួរមាតិកានៃវាលអត្ថបទមួយ អ្នកត្រូវដាក់កន្សោមនៅចន្លោះសញ្ញាសម្រង់ទោល (') ។ ភាពខុសគ្នារវាងអក្សរធំ និងអក្សរតូចគឺអាស្រ័យលើមូលដ្ឋានទិន្នន័យដែលកំពុងប្រើ ។ តាមការកំណត់ LIKE គឺប្រកាន់តួអក្សរតូចធំ (ទោះបីមូលដ្ឋានទិន្នន័យខ្លះមិនសង្កត់ធ្ងន់លើវាក៏ដោយ) ។
ការសួរវាលកាលបរិច្ឆេទ
Date fields are represented as #Date# to clearly identify them as dates. Date, time and date/time constants (literals) used in conditions can be of either the SQL Escape Syntax type, or default SQL2 syntax.
Date Type Element |
SQL Escape syntax #1 - may be obsolete |
SQL Escape syntax #2 |
SQL2 syntax |
កាលបរិច្ឆេទ |
{D'YYYY-MM-DD'} |
{d 'YYYY-MM-DD'} |
{D'YYYY-MM-DD'} |
ពេលវេលា |
{D'HH:MM:SS'} |
{t 'HH:MI:SS[.SS]'} |
'HH:MI:SS[.SS]' |
កាលបរិច្ឆេទ ពេលវេលា |
{D'YYYY-MM-DD HH:MM:SS'} |
{ts 'YYYY-MM-DD HH:MI:SS[.SS]'} |
'YYYY-MM-DD HH:MI:SS[.SS]' |
ឧទាហរណ៍ ៖ select {d '1999-12-31'} from world.years
Example: select * from mytable where years='1999-12-31'
All date expressions (literals) must be enclosed with single quotation marks. (Consult the reference for the particular database and connector you are using for more details.)
ការសួរវាល បាទ/ទេ
ដើម្បីសួរវាល បាទ/ទេ គឺត្រូវប្រើវាក្យសម្ពន្ធខាងក្រោមសម្រាប់តារាង dBASE ៖
ស្ថានភាព |
លក្ខណៈវិនិច្ឆ័យសំណួរ |
ឧទាហរណ៍ |
បាទ |
សម្រាប់តារាង dBASE ៖ មិនស្មើនឹងតម្លៃណាមួយដែលបានផ្តល់ |
=1 ត្រឡប់កំណត់ត្រាទាំងអស់ដែលវាល បាទ/ទេ មានស្ថានភាព "បាទ" ឬ"ទេ" (បានជ្រើសដោយមានពណ៌ខ្មៅ) |
ទេ |
. |
=0 ត្រឡប់កំណត់ត្រាទាំងអស់ដែលវាល បាទ/ទេ មានស្ថានភាព "ទេ" ឬ"បិទ" (មិនជ្រើស) ។ |
គ្មានសោះ |
IS NULL |
IS NULL ត្រឡប់កំណត់ត្រាទាំងអស់ដែលវាល បាទ/ទេ មិនមានទាំង បាទ ឬទេ (បានជ្រើសជាពណ៌ប្រផេះ) ។ |
វាក្យសម្ព័ន្ធអាស្រ័យលើប្រព័ន្ធមូលដ្ឋានទិន្នន័យដែលបានប្រើ ។ អ្នកគួរចំណាំផងដែរថា វាល បាទ/ទេ អាចត្រូវបានកំណត់ខុសៗគ្នា (តែស្ថានភាព ២ ជំនួសឲ្យ ៣) ។
សំណួរប៉ារ៉ាម៉ែត្រ
Parameter queries allow the user to input values at run-time. These values are used within the criteria for selecting the records to be displayed. Each such value has a parameter name associated with it, which is used to prompt the user when the query is run.
Parameter names are preceded by a colon in both the Design and SQL views of a query. This can be used wherever a value can appear. If the same value is to appear more than once in the query, the same parameter name is used.
In the simplest case, where the user enters a value which is matched for equality, the parameter name with its preceding colon is simply entered in the Criterion row. In SQL mode this should be typed as WHERE "Field" = :Parameter_name
Parameter names may not contain any of the characters <space>`!"$%^*()+={}[]@'~#<>?/,. They may not be the same as field names or SQL reserved words. They may be the same as aliases.
A useful construction for selecting records based on parts of a text field's content is to add a hidden column with "LIKE '%' || :Part_of_field || '%'" as the criterion. This will select records with an exact match. If a case-insensitive test is wanted, one solution is to use LOWER (Field_Name) as the field and LIKE LOWER ( '%' || :Part_of_field || '%' ) as the criterion. Note that the spaces in the criterion are important; if they are left out the SQL parser interprets the entire criterion as a string to be matched. In SQL mode this should be typed as LOWER ( "Field_Name" ) LIKE LOWER ( '%' || :Part_of_field || '%' ).
Parameter queries may be used as the data source for subforms, to allow the user to restrict the displayed records.
បញ្ចូលប៉ារ៉ាម៉ែត្រ
The Parameter Input dialog asks the user to enter the parameter values. Enter a value for each query parameter and confirm by clicking OK or typing Enter.
The values entered by the user may consist of any characters which are allowable for the SQL for the relevant criterion; this may depend on the underlying database system.
The user can use the SQL wild-card characters "%" (arbitrary string) or "_" (arbitrary single character) as part of the value to retrieve records with more complex criteria.
របៀប SQL
SQL មកពីពាក្យ "Structured Query Language" និងពណ៌នាសេចក្តីណែនាំសម្រាប់ការធ្វើបច្ចុប្បន្នភាព និងការគ្រប់គ្រងមូលដ្ឋានទិន្នន័យទំនាក់ទំនង ។
សម្រាប់សំណួរភាគច្រើនក្នុង LibreOffice អ្នកមិនចាំបាច់មានចំណេះដឹងផ្នែក SQL ទេ ដោយសារអ្នកមិនចាំបាច់បញ្ចូលកូដ SQL ។ បើអ្នកបង្កើតសំណួរមួយក្នុងរចនាសំណួរ LibreOffice នឹងបម្លែងសេចក្តីណែនាំរបស់អ្នកទៅជាវាក្យសម្ពន្ធ SQL ដែលត្រូវគ្នា ។ ដោយមានជំនួយពីប៊ូតុង បិទ/បើក ទិដ្ឋភាពរចនា បើអ្នកប្តូរទៅជាទិដ្ឋភាព SQL អ្នកអាចឃើញពាក្យបញ្ជា SQL សម្រាប់សំណួរមួយដែលបានបង្កើតពីមុន ។
អ្នកអាចសរសេរសំណួររបស់អ្នកដោយផ្ទាល់ក្នុងកូដ SQL ។ ទោះយ៉ាងណា ចំណាំថា វាក្យសម្ព័ន្ធពិសេសគឺអាស្រ័យលើប្រព័ន្ធមូលដ្ឋានទិន្នន័យដែលអ្នកប្រើ ។
បើអ្នកបញ្ចូលកូដ SQL ដោយដៃ នោះអ្នកអាចបង្កើតសំណួរបញ្ជាក់ SQL ដែលមិនត្រូវបានគាំទ្រដោយចំណុចប្រទាក់ក្រាហ្វិកក្នុង រចនាសំណួរ ។ សំណួរទាំងនេះត្រូវតែត្រូវបានប្រតិបត្តិក្នុងរបៀប SQL ដើម ។
ដោយចុចរូបតំណាង រត់ពាក្យបញ្ជា SQL ដោយផ្ទាល់ ក្នុងទិដ្ឋភាព SQL អ្នកនឹងអាចសរសេរសំណួរមួយដែលមិនត្រូវបានដំណើរការដោយ LibreOffice ។