الفرق بين المراجعتين لصفحة: «SQL/Logical Operators»
< SQL
لا ملخص تعديل |
ط استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}' |
||
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:المعاملات المنطقية في SQL}}</noinclude> | |||
غالبًا ما تستخدم المعاملات المنطقية (<code>AND</code> و <code>OR</code> و <code>NOT</code>) في عبارة <code>[[SQL/where|WHERE]]</code> للربط ما بين الشروط أو نفيها، إذ يستخدم المعامل <code>AND</code> للربط ما بين الشروط للتأكد من تحققها جميعًا، أما معامل <code>OR</code> فيستخدم للربط ما بين الشروط للتأكد من تحقّق شرطٍ أو أكثر من بينها، أما <code>NOT</code> فيستخدم بغرض النفي، وتكون قيمة التعبير النهائية منطقية (Boolean) إما <code>TRUE</code> أو <code>FALSE</code>. | غالبًا ما تستخدم المعاملات المنطقية (<code>AND</code> و <code>OR</code> و <code>NOT</code>) في عبارة <code>[[SQL/where|WHERE]]</code> للربط ما بين الشروط أو نفيها، إذ يستخدم المعامل <code>AND</code> للربط ما بين الشروط للتأكد من تحققها جميعًا، أما معامل <code>OR</code> فيستخدم للربط ما بين الشروط للتأكد من تحقّق شرطٍ أو أكثر من بينها، أما <code>NOT</code> فيستخدم بغرض النفي، وتكون قيمة التعبير النهائية منطقية (Boolean) إما <code>TRUE</code> أو <code>FALSE</code>. | ||
سطر 74: | سطر 74: | ||
FROM cars | FROM cars | ||
WHERE Year=2018 AND NOT (Colour = ‘Red’ OR Colour = ‘Blue’); | WHERE Year=2018 AND NOT (Colour = ‘Red’ OR Colour = ‘Blue’); | ||
</syntaxhighlight> | |||
سيُظهِر كافة السيارات التي تكون فيها قيمة السنة 2018 وأي قيمة للون باستثناء القيمتين Red أو Blue، وستظهر النتائج الآتية: | سيُظهِر كافة السيارات التي تكون فيها قيمة السنة 2018 وأي قيمة للون باستثناء القيمتين Red أو Blue، وستظهر النتائج الآتية: | ||
{| class="wikitable" | {| class="wikitable" | ||
سطر 120: | سطر 120: | ||
* [https://www.postgresql.org/docs/9.1/static/functions-logical.html توثيق المعاملات المنطقية في محرك PostgreSQL] | * [https://www.postgresql.org/docs/9.1/static/functions-logical.html توثيق المعاملات المنطقية في محرك PostgreSQL] | ||
* [https://dev.mysql.com/doc/refman/5.7/en/logical-operators.html توثيق المعاملات المنطقية في محرك MySQL] | * [https://dev.mysql.com/doc/refman/5.7/en/logical-operators.html توثيق المعاملات المنطقية في محرك MySQL] | ||
[[تصنيف:SQL]] | [[تصنيف:SQL|{{SUBPAGENAME}}]] | ||
[[تصنيف:SQL Operators]] | [[تصنيف:SQL Operators|{{SUBPAGENAME}}]] |
المراجعة الحالية بتاريخ 15:41، 28 يناير 2018
غالبًا ما تستخدم المعاملات المنطقية (AND
و OR
و NOT
) في عبارة WHERE
للربط ما بين الشروط أو نفيها، إذ يستخدم المعامل AND
للربط ما بين الشروط للتأكد من تحققها جميعًا، أما معامل OR
فيستخدم للربط ما بين الشروط للتأكد من تحقّق شرطٍ أو أكثر من بينها، أما NOT
فيستخدم بغرض النفي، وتكون قيمة التعبير النهائية منطقية (Boolean) إما TRUE
أو FALSE
.
ويُضاف لها معامل XOR
في محرك MySQL والذي يتحقق من تحقّق شرطٍ واحدٍ فقط دون الشروط الأخرى.
مثال
إن كان الجدول الآتي cars
موجودًا في قاعدة البيانات:
Colour | Price | Year | Company | Model | CarID |
---|---|---|---|---|---|
White | 22,500 | 2018 | KIA | Optima | 05081 |
Red | 25,995 | 2017 | KIA | Optima Hybrid | 05082 |
Red | 31,900 | 2018 | KIA | Stinger | 05083 |
Black | 31,990 | 2017 | KIA | Cadenza | 05084 |
Blue | 23,240 | 2018 | KIA | Niro | 05085 |
Grey | 14,200 | 2018 | KIA | Rio 5-Door | 05086 |
Blue | 18,200 | 2018 | KIA | Forte5 | 05087 |
Blue | 32,250 | 2017 | KIA | Soul EV | 05088 |
إن تنفيذ الاستعلام الآتي:
SELECT *
FROM cars
WHERE Year=2018 AND NOT (Colour = ‘Red’ OR Colour = ‘Blue’);
سيُظهِر كافة السيارات التي تكون فيها قيمة السنة 2018 وأي قيمة للون باستثناء القيمتين Red أو Blue، وستظهر النتائج الآتية:
Colour | Price | Year | Company | Model | CarID |
---|---|---|---|---|---|
White | 22,500 | 2018 | KIA | Optima | 05081 |
Grey | 14,200 | 2018 | KIA | Rio 5-Door | 05086 |
التوافقية
SQLServer | SQLite | Oracle | PostgreSQL | MySQL |
---|---|---|---|---|
نعم | نعم | نعم | نعم | نعم |