أجهزة الكمبيوتر, برمجة
بين SQL: أمثلة الوصف
عند العمل مع قواعد البيانات العلائقية التي يتم تخزين البيانات في الجداول، وكثيرا ما تواجه المستخدمين بمهمة القيم أخذ العينات شملت (غير مدرجة) في نطاق معين. لغة SQL يسمح لك تحديد متعددة، والتي يجب أن (لا ينبغي) تنتمي إلى قيمة من الخيارات المختلفة - المشغل في، مثل المشغل، وهو مزيج من ظروف أكثر - أقل، فضلا عن SQL بين المشغل. الوصف والأمثلة في هذا المقال سوف تركز على أحدث إصدار.
"بين" المشغل في SQL: القيود بناء الجملة
حرفيا المشغل بين SQL وترجمتها - "بين". استخدامه يجعل من الممكن لوضع حد "ومن" حقل معين، وإذا انخفضت القيمة التالية ضمن نطاق، ثم سيتم تعيين المسند إلى "صحيح"، وستنخفض القيمة في العينة النهائية.
بناء الجملة للمشغل بسيط للغاية:
حدد * من الجدول T1 حيث t1.n بين 0 و 7 |
كما ترون، وبعد الكلمة بين يجب عليك تحديد قيمة الحد الأدنى، ثم و، والحد الأعلى.
تعداد، ما هي أنواع البيانات المشغل يمكن أن تعمل بين SQL:
- مع أرقام - عدد صحيح وكسور.
- مع التواريخ.
- مع النص.
هل هذا بين بيان SQL ديه بعض الخصائص. نحن التعرف عليهم:
- عند العمل مع أرقام وتواريخ القيم الحدية "ومن" مدرجة في العينة.
- يجب أن يكون أقل قيمة من مجموعة أقل من الحد الأعلى، وإلا سوف يتم عرض أي شيء، لأن الشرط غير صحيح منطقيا. رعاية خاصة يجب أن يكون، عندما، بدلا من تدرج قيم معينة في المتغيرات الشرط.
عند العمل مع قيمة النص النطاق العلوي لم يتم تضمين في العينة، إذا لم يتم تعريفه بشكل دقيق جدا. ونحن نعتبر هذه الميزة في الفروع التالية بالتفصيل.
أرقام وتواريخ العينات في نطاق معين
إعداد جدول مع مديري البيانات، والعمل في المؤسسة. والجدول لديها البنية التالية:
اسم الحقل | نوع البيانات | وصف |
قانون | عداد | معرف الموظف فريدة من نوعها |
لقب | نص | اسم ضابط |
اسم | نص | اسم الموظف |
أسم الأب أو الأسرة | نص | موظف العائلي |
بول | نص | أفراد الجنس (M / F) |
Data_priema | تاريخ / وقت | تاريخ استلام الموظف للعمل |
Chislo_detey | عدد | عدد الأطفال في الموظف |
ملء الجدول عن طريق البيانات التالية:
قانون | لقب | اسم | أسم الأب أو الأسرة | بول | Data_priema | Chislo_detey |
1 | الكسندروف | ايرين | N. | F | 2014/05/01 | 1 |
2 | Borovoy | أندرو | S. | M | 2013/09/21 | 0 |
3 | فينوغرادوف | سيرجي | بافلوفيتش | M | 1998/06/15 | 1 |
4 | Shumilin | الكسندر | B. | M | 2004/12/25 | 2 |
5 | فيشنياكوف | ليونيد | A. | M | 2007/10/09 | 0 |
6 | Tropnikov | فاسيلي | S. | M | 2016/01/12 | 3 |
7 | درر | نيكيتا | V. | M | 2017/01/11 | 1 |
8 | Avdeeva | شق | K. | F | 2001/03/31 | 2 |
9 | ياكوفليف | ليونيد | نيكولايفيتش | M | 2009/02/16 | 0 |
تشكيل استعلام SQL بين، والتي سوف تساعدنا على تحديد كافة الموظفين الذين لديهم 2 أو 3 أطفال:
مدراء SELECT *. من مدراء أين Menedzhery.Chislo_detey بين 2 و 3 |
وستكون النتيجة ثلاثة صفوف مع البيانات على الموظفين مع الألقاب Shumilin، Tropnikov وAvdeeva.
الآن اختيار الموظفين تلقى من 1 يناير 2005 إلى 31 ديسمبر عام 2016. وتجدر الإشارة إلى أن قواعد البيانات المختلفة بطرق مختلفة تسمح لك لتسجيل من حيث التواريخ. في معظم الحالات، تاريخ قوة إلى النموذج يوم لمدة شهر وسنة (أو أكثر ملاءمة) والمسجلة في علامات الاقتباس المفردة أو المزدوجة. نظم إدارة قواعد البيانات MS الوصول تشمل تاريخ علامة "#". تشغيل هذا المثال يستند فقط على ذلك:
مدراء SELECT * Menedzhery.Data_priema من مدراء أين مدراء. Data_priema لبين # 1/1/2005 # و# # 31/12/2016 |
وستكون النتيجة خمسة موظفين المعينين خلال الفترة شاملة.
بعد ذلك، دعونا نرى كيف يعمل بين سلاسل SQL.
العمل بين سلاسل
وهناك مشكلة شائعة جدا التي يجب أن تحل عند العمل مع أسماء الموظفين - هي ضرورة لتحديد فقط تلك التي تبدأ بحرف معين الأسماء. ونحن نحاول تنفيذ الاستعلام واختيار الموظفين الذين تبدأ مع اسم آخر من A إلى B أسماء:
مدراء SELECT *. من مدراء أين Menedzhery.Familiya بين "A" و "B" ORDER BY 2 |
والنتيجة هي كما يلي:
قانون | لقب | اسم | أسم الأب أو الأسرة | بول | Data_priema | Chislo_detey |
8 | Avdeeva | شق | K. | F | 2001/03/31 | 2 |
1 | الكسندروف | ايرين | N. | F | 2014/05/01 | 1 |
2 | Borovoy | أندرو | S. | M | 2013/09/21 | 0 |
كما ترون، لم تدرج الموظفين اثنين مع الاسم على حرف B في القائمة. ما هو السبب؟ والحقيقة هي بالضبط كيف المشغل يقارن سلاسل من عدم المساواة في الطول. خط "B" هو أقصر سلسلة "فينوغرادوف" ومبطن. ولكن عندما يكون الترتيب أبجديا المساحات ستكون الأحرف أسرع، وسوف اسم من العينة لا تقع. وتوفر قواعد بيانات مختلفة طرق مختلفة لحل هذه المشكلة، ولكن غالبا ما يكون أسهل طريقة للإشارة إلى إمكانية الاعتماد على الرسالة التالية من الأبجدية في مجموعة:
مدراء SELECT *. من مدراء أين Menedzhery.Familiya بين "A" و "D" ORDER BY 2 |
عندما أعدم، فإن النتيجة الاستعلام يرضينا تماما.
يوجد هذا فارق بسيط فقط عند التعامل مع البيانات الشخصية، لكنه يظهر أنه حتى عند التعامل مع مثل هذه مشغلي بسيطة كما بين، عليك أن تكون حذرا.
Similar articles
Trending Now