عبارات
يك عبارت يك مقدار را برميگرداند. از نقطه نظر نوع داده، عبارت انواع متفاوتي دارد مثل رشته، عدد و بولين. در واقع هر چيزي پس از شبه جمله (بطور مثــال SELECT يا FROM) بيانگر يك عبارت است. در مثــال زير amount يك عبارت است كه مقدار ستون omount را بر ميگرداند:
کد:
SELECT amount FROM checks
شرايط
اگر بخشي از اقلام يا گروهي از اقلام را در پايگاه اطلاعاتي بخواهيم، به يك يا چند شرط احتياج دارد. شرايط در داخل شبه جمله WHERE ميآيند.
شرايط' امكان پرس و جوهاي انتخابيتر را ميدهند. در متداولترين فرم آنها، شرايط از يك متغير، يك مقدار ثابت و يك عملگر مقايسهاي تشكيل ميشوند.
قاعده نگارش شبه جمله WHERE :
کد:
SELECT column_name(s)
FROM table_name
WHERE condition
عملگرها
عملگرها عناصري هستند كه براي بيان چگونگي شرايط مورد نظر جهت استخراج دادهها در داخل يك عبارت استفاده ميشوند. عملگردها به 6 گروه تقسيم ميشوند: رياضي، مقايسهاي، كاراكتري، منطقي، مجموعهاي و متفرقه.
• عملگرهاي رياضي
عملگردهاي رياضي عبارتند از: جمع (+)، تفريق (-)، ضرب (*)، تقسيم (/) و باقيمانده صحيح (% يا MOD).
• عملگردهاي مقايسهاي
عملگرهاي مقايسهاي، عبارات را مقايسه نموده و يكي از اين سه مقدار را بر ميگردانند: صحيح (True)، غلط (False) يا ناشناخته (Unknown).
در فرهنگ اصطلاحات پايگاه دادهها، هيچ (NULL) به معناي عدم حضور داده در يك فيلد است. اما بدين مفهوم نيست كه فيلد داراي مقدار صفر يا بلانك (blank) است. صفر يا بلانك يك مقدار است در حاليكه هيچ يعني آن فيلد چيزي ندارد.
اگر مقايسهاي مثل field=9 را انجام دهيم و بدانيم تنها مقدار قابل قبول براي آن فيلد هيچ است، آنگاه نتيجه مقايسه ناشناخته است. چون ناشناخته يك شرط نامناسب است، نسخههاي مختلف SQL ، مقدار ناشناخته را با مقدار غلط جايگزين مينمايند و عملگر خاص IS NULL را براي آزمايش شرط NULL ارائه ميدهند.
عملگرهاي مقايسهاي عبارتند از: مساوي (=)، بزرگتر از (> ) ، بزرگتر يا مساوي با (=>)، كوچكتر از (<)، كوچكتر يا مساوي با (=<) و نامساوي (= ! يا < >).
توجه ـ براي پيدا كردن مقادير فيلدهاي كاراكتري بايد از علامت كوتيشن در طرفين مقدار مورد نظر استفاده شود. فيلدهاي عددي نيازي به استفاده از علامت كوتيشن ندارند.
تذكرـ گرچه قاعده نگارش SQL به حروف بزرگ و كوچك حساس نيست، اما دادهها آن حساس ميباشند. اكثر شركتها ترجيح ميدهند كه اطلاعات را به شكل حروف كوچك ذخيره كنند تا بدين وسيله جامعيت دادهها را تأمين نمايند. پيشنهاد ميشود كه همه دادهها يا بصورت حروف بزرگ و يا بصورت حروف كوچك ذخيره شوند. تركيب حروف بزرگ و كوچك احتمالا موجب بروز مشكلاتي در بازاريابي دقيق دادهها خواهد شد.
توجه ـ حروف بزرگ معمولا قبل از حروف كوچك ذخيره ميشوند (ارزش كاراكتري حروف بزرگ كمتر از حروف كوچك است).
• عملگردهاي كاركتري
از عملگردهاي كاراكتري براي پردازش رشتههاي كاراكتري استفاده ميشود (هم در خروجي دادهها و هم به منظور گذاشتن شرطي روي دادههايي كه بايد بازيابي گردند.)
عملگر LIKE
گاهي اوقات ميخواهيم بخشي از اطلاعات پايگاه دادهها را كه داراي الگوي خاصي است ولي كاملا يك داده خاص را نميپوشاند، انتخاب و بازيابي نماييم. يك روش طولاني و خسته كننده آن است كه الگوي مورد نظر را در حالات مختلف ممكن در سرتاسر پايگاه دادهها به همراه علامت = استفاده كنيم. راه حل بعدي استفاده از LIKE است.
کد:
SELECT coumn_name FROM table_name
WHERE column_name LIKE pattern
مثــال/
کد:
SELECT * FROM customers
WHERE LastName LIKE 'S%'
با استفاده از عبارت فوق، ركورد تمام مشترياني كه نام خانوادگي آنها با حرف S شروع ميشود به عنوان خروجي، برگردانده خواهد شد.
تذكر ـ از علامت % ميتوان در ابتدا، انتها و يا در هر دو طرف الگو (pattern) استفاده كرد.
اگر بخواهيم دادههايي را پيدا كنيم كه يك يا چند كاراكتر از آن را در اختيار داريم، بايد از نوع ديگري از wildcard، يعني underscore (_ ) استفاده كنيم.
مثــال/
کد:
SELECT * FROM friends
Where phone LIKE '223_5_8_'
همچنين ميتوان از تركيب اين دو Wildcard نيز استفاده كرد.
مثــال/
کد:
SELECT * FROM customers
WHERE LastName LIKE '_b% '
با استفاده از اين مثــال تمام ركوردهايي كه دومين كاراكتر نام خانوادگي آنها b است، پيدا ميشوند.