الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود Sqlاريد عمله

مغلق
بدأه Miss_Dev في 13 أغسطس 2006 · 14 رد · 2,409 مشاهدة · في قسم لغة الاستفسارات SQL
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

لدى جدول به عمودين {Eff_from-Eff_to}و اريد عمل استعلام بحيث أن اراعى عدم وجود Null value

, قمت باستخدام NVL(eff_to,0 ) و لكن لم يقبله فهل هناك حل لتفادى تلك المشكلة

جزاكم الله خيرا

موقع سلطان للروابط المجمعة

طريق الاسلام

الاسلام سؤال و جواب

****من قال فى اليوم سبحان الله و بحمده مائه مرة غفرت ذنوبه و أن كانت كزبد البحر****

Das Alter des Schlafens ist gegangen

من لاح له فجر الاجر ... هان عليه ظلام التكليف

زوروا أول موقع لى

#2

هل تستخدم sql ؟ سهل انك تنفذ الامر اذا كنت بتستخدم sql ... اذا كان اكتب لك الكود هنا ..

ما كانش .. يبقى اعذرني لان خبرتي في الاوراكل زي خبرتي برعاية الرضع B)

#3

اعذرني ما اخدتش بالي من العنوان ..

SELECT count(*) from x WHERE x IS NULL;

ضع امر الـ sql في حالة شرط بس بالنفي ... يعني لو الشرط ما تحققش .. نفذ كذا ... يعني لو في ناتج للاستعلام نفذ شرط معين وهو رسالة الخطأ مثلا ولولم يوجد اكمل العملية - حسب اللغة اللي بتستخدمها للتعامل مع اوراكل .

تم تعديل هذه المشاركة بواسطة محمد رمضان في 13 أغسطس 2006 في 01:39

#4

أيضا جرب استخدام الأمر:

SELECT * from table  WHERE x not in (NULL);

او يمكنك تحديد عدة قيم تستثني منها اختيارك :

SELECT * from table  WHERE x not in (1,2,34,NULL);

لاستثناء من مجموعة قيم ...

اتمنى اكون افدت .. :unsure:

#5

إذا كنت لا تريد قيم Null :

select * from table_name where eff_to is not null;

أو بإستخدام NVL :

select * from table_name where nvl(eff_to,-1) <>-1;
#6

نسيت ان اذكر ان العمودين تواريخ DATES

و هذه هى المشكلة

موقع سلطان للروابط المجمعة

طريق الاسلام

الاسلام سؤال و جواب

****من قال فى اليوم سبحان الله و بحمده مائه مرة غفرت ذنوبه و أن كانت كزبد البحر****

Das Alter des Schlafens ist gegangen

من لاح له فجر الاجر ... هان عليه ظلام التكليف

زوروا أول موقع لى

#7

يمكنك استخدام IS NOT NULL حتى مع التواريخ ...

#8

هنا شرح كامل للـ Oracle NULLs :

http://www.psoug.org/reference/null.html

اذا كنتي تقصدي ان التاريخ Not null تاكدي الاول ان القيمة الافتراضية لعمود الوقت هي null وليست صفر ...

#9

القيمة الإفتراضية لجميع أنواع البيانات في أوراكل إذا لم تقم بتحديدها فهي NULL ..

#10

السلام عليكم

و لكنى اريد استخدام NVL

select auth_c from lu_auth where eff_from >=sysdate and NVL(Eff_to,0)<=sysdate

i wish you could get me

تم تعديل هذه المشاركة بواسطة Miss_Dev في 13 أغسطس 2006 في 23:45

موقع سلطان للروابط المجمعة

طريق الاسلام

الاسلام سؤال و جواب

****من قال فى اليوم سبحان الله و بحمده مائه مرة غفرت ذنوبه و أن كانت كزبد البحر****

Das Alter des Schlafens ist gegangen

من لاح له فجر الاجر ... هان عليه ظلام التكليف

زوروا أول موقع لى

#11
SELECT auth_c, NVL(Eff_from, Eff_to) FROM lu_auth;

SELECT auth_c, NVL(enddate, SYSDATE) FROM lu_auth;

SELECT auth_c, NVL(enddate , startdate) FROM lu_auth;

تم تعديل هذه المشاركة بواسطة محمد رمضان في 14 أغسطس 2006 في 00:33

#12

the oracle developer is giving me error in the datatype

says there is mismatch between date and number datatypes

and i want to avoid having the date field with null value

موقع سلطان للروابط المجمعة

طريق الاسلام

الاسلام سؤال و جواب

****من قال فى اليوم سبحان الله و بحمده مائه مرة غفرت ذنوبه و أن كانت كزبد البحر****

Das Alter des Schlafens ist gegangen

من لاح له فجر الاجر ... هان عليه ظلام التكليف

زوروا أول موقع لى

#13

هل ممكن أن أعلم لماذا أنت مصرة على استخدام NVL ؟؟؟

الإستعلم الذي كتبتيه يمكن إعادة كتابته بالشكل :

 select auth_c from lu_auth where  ( eff_from >=sysdate )  
		  and nvl(eff_to , to_date('1-1-1900', 'dd-mm-yyyy') ) <= sysdate;

طبعاً الخطأ يأتي من أنك تريدين مقارنة الصفر في حال كون eff_to فارغة Null مع التاريخ

#14

سامحينى... لم افهم ما المشكلة بالظبط

but i want to tell u that COUNT group function already not enclude the null values look: !0

select count(COMMISSION_PCT) from employees

is diferent from

select count(*) from employees

so what u mean with using nvl... r u want to include null values in ur statement

#15

in NVL (expr1, expr3) the two expressions must be the same datatype..

هذا الموضوع مغلق.

مواضيع مشابهة