السلام عليكم ورحمة الله
هل يمكن الحصول على الارقام المفقودة بمعنى عندى جدول باسم emp ويحتوى على حقل empid
والارقام مسلسلسة بالشكل التالى
empid
1
2
3
5
6
8
فى المثال السابق الارقام المفقودة 4و7 كيف يتم كتابة جملة sql للحصول على الارقام الغير موجودة
السلام عليكم ورحمة الله
هل يمكن الحصول على الارقام المفقودة بمعنى عندى جدول باسم emp ويحتوى على حقل empid
والارقام مسلسلسة بالشكل التالى
empid
1
2
3
5
6
8
فى المثال السابق الارقام المفقودة 4و7 كيف يتم كتابة جملة sql للحصول على الارقام الغير موجودة
{وَاتَّقُواْ يَوْمًا تُرْجَعُونَ فِيهِ إِلَى اللّهِ ثُمَّ تُوَفَّى كُلُّ نَفْسٍ مَّا كَسَبَتْ وَهُمْ لاَ يُظْلَمُونَ} (281) سورة البقرة

اليك بهذا الكود وهو عبارة عن قالب (Template) افتحه في Query Analyzer واعمل استبدال للحقول عن طريق ضغط
CTRl+ Shift+ M
ستظهر شاشة ادخل بها اسم الجدول emp والحقل المطلوب empid ادخله مرتين
Select LastSeqNumber , NextSeqNumber , FirstAvailable = LastSeqNumber + 1 , LastAvailable = NextSeqNumber - 1 , NumbersAvailable = NextSeqNumber - (LastSeqNumber + 1) from ( Select LastSeqNumber = (Select isnull(Max(Seq2.<column_2, sysname, c2>),0) as SeqNumber from <table_name, sysname, test_table> Seq2 where (Seq2.<column_2, sysname, c2>) < ( Seq1.<column_2, sysname, c2> ) ) , NextSeqNumber = <column_2, sysname, c2> from <table_name, sysname, test_table> Seq1 ) as A where NextSeqNumber - LastSeqNumber > 1 order by LastSeqNumber
اخي الكريم
السلام عليكم
معلش انا عملتلك نص الحل علي ملف اكسس مرفق
عبارة عن جملة select من متغير يحتوي الارقام من 1 الي 20 وفى المثال المرفق اسم هذا المتغير SerialX وهو جدول يمكنك الاستعاضه عنه بأي متغير اخر
وعندك شرطين فى شكل subQerey الاول لانتقاء الارقام المفقودة من جدول EMP وموجودة فى SerialX والثاني لاخفاء الارقام الغير مرغوب فيها
ممكن تعرفني ازاي بتعمل متغير بدل الجدول SerialX
اخوك فى الله
Microsoft Certified DataBase Administrator MCDBA
هذا الموضوع مغلق.