freimanisg Posted February 21, 2012 Report Share Posted February 21, 2012 Sveiki! Palīdziet man, lūdzu, tikt skaidrībā, kāds būtu sql pieprasījums, lai izgūtu datus no mysql db. Tātad, man ir divas tabulas. viena satur pilnīgi visas iesūtītās bildes ar unikālu filename. otra - balsojumus par bildēm (filename, žūrijas loceklis, baļļu skaits, utt.). par cik ir vairāki žūrijas locekļi, tad par atsevišķām bildēm ir balsots 2x vai vairāk. bet ir tādas, par kurām nevienu reizi nav balsots. bez problēmām izguvu kopvērtējumu ar sum() funkciju. bet ir nepieciešams izgūt tās bildes, par kurām nav ne reizi nobalsots. iespējams, ka to var izdarīt vienā pieprasījumā, bet tas būtu itin sarežģīti. par cik sabalsotās bildes jau izguvu, atliek vēl izgūtu nesabalsotās bildes no 1. tabulas - ar citu pieprasījumu. ieviesiet man prāta apskaidrību, kā izgūt tās bildes (a_filename) no 1.tabulas (tbl_a), kuras (b_filename) nav 2.tabulā (tbl_b). Paldies! Quote Link to comment Share on other sites More sharing options...
codez Posted February 21, 2012 Report Share Posted February 21, 2012 šādos gadījumos vajag glabāt bilžu tabulā katrai bildei kopējo balsu skaitu. Quote Link to comment Share on other sites More sharing options...
freimanisg Posted February 21, 2012 Author Report Share Posted February 21, 2012 šādos gadījumos vajag glabāt bilžu tabulā katrai bildei kopējo balsu skaitu. Kā pareizi, kā nepareizi, kā būtu, ja būtu... Kā redzi, esmu Māceklis, Tu - Koda dievs. Tad ja Tu patiešām tāds esi, tad pierādi to un pasaki man, lūdzu, ko man darīt konkrētajā momentā, nevis gudri izrunāties ko un kā vajadzēja darīt pirms tam... Quote Link to comment Share on other sites More sharing options...
codez Posted February 21, 2012 Report Share Posted February 21, 2012 ko darīt? 1)uztaisi tabulā bildes lauku "votes" 2)Pie balsošanas skripta pieliec UPDATE images SET votes=votes+1 WHERE id=$id_of_image_voted_for 3)Atlasīt bildes, kuras nav saņēmušas balsis SELECT * FROM images WHERE votes=0; Volāāā! Kas var būt labāks par šo!? P.S. Ja gadījumā vajag sakārtot jau esošos datus, tad palaižam kaut ko tādu: UPDATE images SET votes=(SELECT count(*) FROM votes WHERE image_id=images.id) Quote Link to comment Share on other sites More sharing options...
freimanisg Posted February 21, 2012 Author Report Share Posted February 21, 2012 UPDATE images SET votes=votes+1 WHERE .. Tavs variants neder, jo kā gan es noteikšu kurš žūrijas loceklis kā ir nobalsojis?? Jānis var nobalsot ar 10 ballēm, bet Andris var ar piecām. Un man ir nepieciešams parādīt kurš loceklis kā ir nobalsojis. Ja es skaitīšu visu kopā vienā ciparā, un ja pēc tam kāda balsojums kaut kādu iemeslu dēļ būs jāanulē?? Man nepieciešams risinājums pēc esošajiem datiem. Man vajag izgūt tos datus no 1.tabeles, kuri nav 2.tabelē! Quote Link to comment Share on other sites More sharing options...
codez Posted February 21, 2012 Report Share Posted February 21, 2012 Kas tev traucē glabāt tā kā tagad ir, lai zini, kurš par kuru balsojis un papildus tam glabāt kopējo rezultātu? Quote Link to comment Share on other sites More sharing options...
Kaklz Posted February 21, 2012 Report Share Posted February 21, 2012 Kā pareizi, kā nepareizi, kā būtu, ja būtu... Kā redzi, esmu Māceklis, Tu - Koda dievs. Tad ja Tu patiešām tāds esi, tad pierādi to un pasaki man, lūdzu, ko man darīt konkrētajā momentā, nevis gudri izrunāties ko un kā vajadzēja darīt pirms tam... Ja esi iesācējs, tad iemācies vispirms normāli komunicēt un uzdot jautājumus. Tas tev ļoti palīdzēs turpmākajā dzīvē: http://datubazes.wor...zdot-jautajumu/ Konkrēti no pirmās daļas uz tevi attiecas punkti 3,4,7. No otrās daļas - punkts #3. Quote Link to comment Share on other sites More sharing options...
freimanisg Posted February 21, 2012 Author Report Share Posted February 21, 2012 Ja esi iesācējs, tad iemācies vispirms normāli komunicēt un uzdot jautājumus. Tas tev ļoti palīdzēs turpmākajā dzīvē: http://datubazes.wor...zdot-jautajumu/ Konkrēti no pirmās daļas uz tevi attiecas punkti 3,4,7. No otrās daļas - punkts #3. Tagad man skaidrs - šis forums paredzēts, lai lielie apliktu mazos, nevis lai reāli palīdzētu. Paldies! :) Quote Link to comment Share on other sites More sharing options...
daGrevis Posted February 22, 2012 Report Share Posted February 22, 2012 Neviens tevi te 'neapliek'! 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.