anonīms Posted August 20, 2010 Report Share Posted August 20, 2010 SELECT t3.*, t2.nosaukums AS cat_name, ".PREFIX."lietotaji.lietotajvards AS lietotajs FROM ".PREFIX."forums_subkategorijas AS t3, ".PREFIX."forums_kategorijas AS t2, ".PREFIX."lietotaji AS t1 INNER JOIN ".PREFIX."lietotaji ON ".PREFIX."lietotaji.id = ".PREFIX."forums_subkategorijas.aktivitate_no WHERE t3.kategorija = t2.id ORDER BY t2.seciba ASC, t3.seciba ASC Kādēļ man izmet Unknown column 'forums_subkategorijas.aktivitate_no' in 'on clause' Šāda kollona eksistē. Quote Link to comment Share on other sites More sharing options...
codez Posted August 20, 2010 Report Share Posted August 20, 2010 tev jālieto aliasi t1,t2,t3 Quote Link to comment Share on other sites More sharing options...
anonīms Posted August 20, 2010 Author Report Share Posted August 20, 2010 Tur jau tā lieta, ka izveidojot šādi: SELECT t3.*, t2.nosaukums AS cat_name, t1.lietotajvards AS lietotajs FROM ".PREFIX."forums_subkategorijas AS t3, ".PREFIX."forums_kategorijas AS t2, ".PREFIX."lietotaji AS t1 WHERE t3.kategorija = t2.id AND t3.aktivitate_no = t1.id ORDER BY t2.seciba ASC, t3.seciba ASC Tiek izvadīta tikai tā subkategorija, kurai ir šī aktivitāte. Un ja izņem ārā AND t3.aktivitate_no = t1.id, tad vispār ir šausmas. Katra subkategorija tiek atkārtota n-tās reizes. Quote Link to comment Share on other sites More sharing options...
codez Posted August 20, 2010 Report Share Posted August 20, 2010 aiz ON lieto tabulas aliasu t1, nevis pilno nosaukumu Quote Link to comment Share on other sites More sharing options...
anonīms Posted August 20, 2010 Author Report Share Posted August 20, 2010 Unknown column 't3.aktivitate_no' in 'on clause' SELECT t3.*, t2.nosaukums AS cat_name, ".PREFIX."lietotaji.lietotajvards AS lietotajs FROM ".PREFIX."forums_subkategorijas AS t3, ".PREFIX."forums_kategorijas AS t2 JOIN ".PREFIX."lietotaji ON t3.aktivitate_no = ".PREFIX."lietotaji.id WHERE t3.kategorija = t2.id ORDER BY t2.seciba ASC, t3.seciba ASC Quote Link to comment Share on other sites More sharing options...
spainis Posted August 20, 2010 Report Share Posted August 20, 2010 JOINS tiek izpildīts t2 un lietotāju tabulai, jāapmaina t2 un t3 vietām @ FROM Quote Link to comment Share on other sites More sharing options...
anonīms Posted August 20, 2010 Author Report Share Posted August 20, 2010 Jā, tagad iet, bet tāpat - tiek izvadītas tikai tās subkategorijas, kur ir šis aktivitate_no. Kā izveidot, lai jebkurā gadījumā rāda visas subkategorjias? SELECT t3.*, t2.nosaukums AS cat_name, ".PREFIX."lietotaji.lietotajvards AS lietotajs FROM ".PREFIX."forums_kategorijas AS t2, ".PREFIX."forums_subkategorijas AS t3 JOIN ".PREFIX."lietotaji ON t3.aktivitate_no = ".PREFIX."lietotaji.id WHERE t3.kategorija = t2.id ORDER BY t2.seciba ASC, t3.seciba ASC Quote Link to comment Share on other sites More sharing options...
Gints Plivna Posted August 20, 2010 Report Share Posted August 20, 2010 Ja es pareizi saprotu problēmu, tad paskaties šo te piemēru, kā no trīs tabulām (kas piemērā ir viena tabula, bet tas nebūtu svarīgi) dabūt ārā ierakstus, pat ja nav atbilstošu ierakstu saistītajās tabulās. Vispār Tev noteikti derētu vai nu augšminētajā saitā vai arī jebkur citur, kas patīk labāk palasīties vairāk par savienojumiem (join), kas tie ir un ko ziemā ēd. Gints Plivna http://datubazes.wordpress.com Quote Link to comment Share on other sites More sharing options...
anonīms Posted August 21, 2010 Author Report Share Posted August 21, 2010 Paldies Gintam. Palasīju un izveidoju šādu: http://paste.php.lv/1a4252dd6fdc9ad7c77d71f773feb1d8?lang=php Pagaidām iet kā smērēts. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.