05. august 2002 - 23:40Der er
5 kommentarer og 1 løsning
Inner Join tabel
Hej
Jeg har et mindre problem med en SQL streng.
Jeg har en tabel ved navn Tbl_Log_Cart der indeholder en række id'ere.
Jeg har en søge runtine der finder en række id'ere der matcher en given søgeteksten. Hvis id'erne er identiske med de id'ere fra tabellen Tbl_Log_Cart skal de sorteres fra. Problemet er at det sker bare ikke.
Jeg poster min SQL sætning i håb om at der nogle der kan gennemskue mit problem. På forhånd tak.
From Tbl_Index Tbl_I Inner Join Tbl_Index_Book_Relation Tbl_IBR On Tbl_I.Index_ID = Tbl_IBR.Index_ID Inner Join View_Book View_B On Tbl_IBR.Book_ID = View_B.Book_ID And View_B.Book_Category_ID = 8 Inner Join -- HER JOINER JEG TABELLEN Tbl_Log_Cart Tbl_Log_Cart Tbl_LC On -- HER FORSØGER JEG AT FILTRERE DE ID'ERE FRA DER ALLEREDE LIGGER I TABELLEN Tbl_Log_Cart Tbl_IBR.Book_ID <> Tbl_LC.Book_ID Where Tbl_I.Index_Value Like '%e%' And (Tbl_I.Index_Type_ID = 1 Or Tbl_I.Index_Type_ID = 7) Group By View_B.Book_ID, View_B.Book_Title, View_B.Book_Publication_Date, View_B.Book_Price, View_B.Book_Publisher_Name, View_B.Book_Publisher_City
From Tbl_Index Tbl_I Inner Join Tbl_Index_Book_Relation Tbl_IBR On Tbl_I.Index_ID = Tbl_IBR.Index_ID Inner Join View_Book View_B On Tbl_IBR.Book_ID = View_B.Book_ID And View_B.Book_Category_ID = 8 Where Tb1_IBR.Book_ID not in (select distinct Book_ID from Tbl_Log_Cart) and Tbl_I.Index_Value Like '%e%' And (Tbl_I.Index_Type_ID = 1 Or Tbl_I.Index_Type_ID = 7) Group By View_B.Book_ID, View_B.Book_Title, View_B.Book_Publication_Date, View_B.Book_Price, View_B.Book_Publisher_Name, View_B.Book_Publisher_City
benny.tordrup >> Det er en løsning at sammenligne Book_ID med en Select statement. Jeg har forsøgt mig med den og det virker - men jeg synes ikke den er en særlig pæn måde at gøre det på. Desuden performer det heller ikke særligt godt. Men i mangel af bedre er der vel ikke andet at gøre :-)
Kan man ikke bruge LEFT OUTER JOIN, og så selecte efter NULL i Tbl_Log_Cart...
Select View_B.Book_ID, View_B.Book_Title, View_B.Book_Publication_Date, View_B.Book_Price, View_B.Book_Publisher_Name, View_B.Book_Publisher_City From Tbl_Index Tbl_I Left Outer Join Tbl_Index_Book_Relation Tbl_IBR On Tbl_I.Index_ID = Tbl_IBR.Index_ID Left Outer Join View_Book View_B On Tbl_IBR.Book_ID = View_B.Book_ID And View_B.Book_Category_ID = 8 Left Outer Join Tbl_Log_Cart Tbl_LC On Tbl_IBR.Book_ID = Tbl_LC.Book_ID Where Tbl_LC.Book_ID Is Null And Tbl_I.Index_Value Like '%e%' And (Tbl_I.Index_Type_ID = 1 Or Tbl_I.Index_Type_ID = 7) Group By View_B.Book_ID, View_B.Book_Title, View_B.Book_Publication_Date, View_B.Book_Price, View_B.Book_Publisher_Name, View_B.Book_Publisher_City
proaccess >> Jo det kan man godt - Tusind tak for hjælpen :-)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.