الفلترة بين جدولية عن طريق query
#1
السلام عليكم و رحمة الله و بركاته

ما هي الطريقة المناسبة لفترة جدولين عن طريق الــ query حيث أن الجدولين يربط بينهما نفس الرقم.
 هذا الكود يفلتر جدول واحد، فكيف أضيف الفترة للجدول الثاني و شكرا
PHP كود :
begin
   
if (edit1.Text > '') then begin
      adoquery1
.active:=false;
 
     adoquery1.sql.clear;
ADOQuery1.SQL.Add
('  SELECT *  FROM DETAIL_FACT , CM  where N_FACTTURE like'+  QuotedStr('%'+edit1.text+'%')) ;

 
     adoquery1.open
   end 

أخطأت في وضع الكود حيث أن CM  هو الجدول الثاني لكن الكود لا يعمل لكن عند حذفها يعمل الكود لكن في جدول واحد

PHP كود :
begin
   
if (edit1.Text > '') then begin
      adoquery1
.active:=false;
 
     adoquery1.sql.clear;
ADOQuery1.SQL.Add
('  SELECT *  FROM DETAIL_FACT  where N_FACTTURE like'+  QuotedStr('%'+edit1.text+'%')) ;

 
     adoquery1.open
   end 
لا إله إلا الله محمد رسول الله
الرد
#2
إقتراح :
- قم بمج الجدولين عن طريقة دمج الاستعلامين بعبارة Union all و عندها سيصبحان جدول واحد للبحث فيه
- قم بالبحث في الجدول الأول و النتائج ستكون في recordset و بعدها قم بالبحث في الجدول الثاني و ستكون النتائج في recordset اخرى
الرد
#3
استعمل Inner join

سلام عليكم



[صورة: img_innerjoin.gif]



كود :
SELECT column_name(s) FROM table1 JOIN table2 ON table1.column_name=table2.column_name;
الفاشلون نوعان : الأول : فكر ولم يفعل .. والآخر: فعل ولم يفكر
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم