08-09-2018, 03:29 PM (آخر تعديل لهذه المشاركة: 08-09-2018, 03:31 PM بواسطة Delphi4Us.)
كود :
Select * from TableName
Where
)
(Chair=0001) or (chair=0004)
And
(Table=0005) or (Table=0006)
And
(PC=0007)
(
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم
كل من 1 user says قال شكرا ل Delphi4Us على المشاركة المفيدة1 user says Thank You to Delphi4Us for this post • MODROS
08-09-2018, 04:52 PM (آخر تعديل لهذه المشاركة: 08-09-2018, 09:25 PM بواسطة محمد عبد العزيز.)
لم تفهمني جيدًا
0001-0004 معناها من 0001 إلى 0004 فمثلًا إذا كان هناك رقم آخر لـ Chair مثلًا: 0010، يكتب :
0001-0004,0010
و حبذا لو يضاف حقل جديد يعطي عدد Chair و Table و PC
أضفت في المرفق ملف قاعدة البيانات و واجهة لكتابة كود sql و تنفيذه، للتأكّد من مدى فعالية الكود المعطى.
و بارك الله فيكم على التغاعل
سوف اعود لانني مستعحل الان
ماهي الاداة DBgride التي تعرض فيها النتيجة
اذا كانت تدعم expression يمكنك بسهولة تخصيص النتيجة في الحقل الذي تريد
قل: اللهم فاطِرَ السماوات والأرض عالم الغيبِ والشهادة، ربَّ كُلِّ شَيءٍ ومَلِيكَه، أَشْهد أن لا إله إلا أنت، أعوذ بك من شرِّ نفسي وشرِّ الشيطان وشِرْكِهِ وأن أقترف على نفسي سوءًا أو أجرُّه إلى مسلم
كل من 1 user says قال شكرا ل Delphi4Us على المشاركة المفيدة1 user says Thank You to Delphi4Us for this post • MODROS
(08-09-2018, 07:15 PM)Delphi4Us كتب : سوف اعود لانني مستعحل الان
ماهي الاداة DBgride التي تعرض فيها النتيجة
اذا كانت تدعم expression يمكنك بسهولة تخصيص النتيجة في الحقل الذي تريد
تأكّد أنّها و تدعم النتيجة (عن تجريب)، و أنا أجرّب من جهتي حتّى أصل للمطلوب
بارك الله فيك على حرصك، و جعلت إن شاء الله في ميزان الحسنات
وصلت إلى مرحلة متقدّمة من الحلّ، و إن كان هناك الإشكال في تسلّسل البيانات حين لا يزيد Code_Article بواحد، حسب المثال السابق:
0001-0004
0005-0006
0007
هذا الذّي و صلت إليه، و لكن عندما يكون مثلًا 0010، لا زلت أعمل على ذلك، و هذه صورة للنتيجة على DBManager الخاصّ بقواعد بيانات Absolute Database، (حملها من الرفق إذا تعذّرت المعاينة):
و بارك الله في كلّ من اجتهد لنصل معًا إلى المطلوب.
لم أوفّق للتقدّم إلى المطلوب-و أنا على عجالة في هذا الأمر-، فهل هناك طريقة أخرى، مع العلم أنّه محتوى يراد به الطباعة على (FastReport)، و عرضه على (DBGrid).
السلام عليكم
هنا يجب استعمال loop لادراج قائمة معطيات في دالة او متغير
هاك مثال عن mysql
كود :
While loop syntax example in MySQL:
delimiter //
CREATE procedure yourdatabase.while_example()
wholeblock:BEGIN
declare str VARCHAR(255) default '';
declare x INT default 0;
SET x = 1;
WHILE x <= 5 DO
SET str = CONCAT(str,x,',');
SET x = x + 1;
END WHILE;
select str;
END//
Which prints:
mysql> call while_example();
+------------+
| str |
+------------+
| 1,2,3,4,5, |
+------------+
;والله اعلم
لأستهلنّ الصعب أو أدرك المنى فما انقادت الآمال إلاّ لصابر
كل من 1 user says قال شكرا ل mobile على المشاركة المفيدة1 user says Thank You to mobile for this post • MODROS
بارك الله فيك سيّدي الجميل، إلّا أنّي أستخدم قواعد بيانات Absolute database ، و قد ظننت أنّي وجدت الحلّ سابقًا بمعرفة الأمر declare، إلّا أنّ ما أستخدمه لا يدعم ذلك الأمر، أو أنّي لم أجد استخدامه بالطريقة المثلى، إذ أنّها في كلّ مرّة ترسل رسالة خطأ :
SQL token expected, but 'declare' found at line 1, column 1 - Native error: 30153