مقداد شکیبا

  • ۱
  • ۰

مثال 1 : کارمندان متولد 1360 که حقوق آنها بالاتر از 2000 ریال است را حذف کن.

DELETE        Personnel      WHERE        BirthYear = 1360      AND     Salary > 2000

کسانی حذف می شوند که هم متولد 1360 باشند و هم بالاتر از 2000 ریال حقوق بگیرند. این خاصیت AND است.

مثال 2 : به حقوق کارمندانی که دارای 2 فرزند هستند یا قبل از 1360 بدنیا آمده اند 5 درصد اضافه کن.

UPDATE       Personnel      SET    Salary = Salary * 1.05

WHERE        ChildNumber = 2      OR     BirthYear < 1360

در مثال قبل اجباری نیست همزمان هر دو شرط برقرار باشد تا کارمندی مشمول افزایش حقوق باشد. مثلا آقای الف متولد 1354 و دارای سه فرزند است. به دلیل سال تولدش مشمول اضافه حقوق می شود.

در SQL  جابجا کردن شرط های دو طرف AND و OR هیچگونه اثری حتی در سرعت اجرا ندارد! (چرا؟)

می توانید با استفاده از AND ها یا OR های بیشتر تعداد شرطها را بیشتر کنید و شروط پیچیده تری بنویسید. حتی می توانید AND و OR را با هم نیز استفاده کنید. آیا می توانید مثال بزنید؟

مثال 3 : کارمندانی که متولد 1360 نیستند را حذف کن

DELETE        Personnel      WHERE        NOT ( BirthYear = 1360 )

البته این شرط را به اشکال دیگری نیز می توان نوشت:

DELETE        Personnel      WHERE        BirthYear <> 1360

DELETE        Personnel      WHERE        BirthYear ! = 1360

و حتی به این شکل !

DELETE        Personnel      WHERE        BirthYear < 1360      OR       BirthYear > 1360


  • ۹۰/۰۵/۰۴
  • مقداد شکیبا

AND

NOT

OR

SQL

نظرات (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی