Avatar billede Jonasmp Nybegynder
14. februar 2012 - 22:57 Der er 7 kommentarer

Query

To tabeller simplificeret:

Users                          Properties
--------------------          --------------------------------
ID    Navn                    USER_ID          Property
--    ------                  -------          ---------
1      Mogens                  1                Tyk
2      Fin                    1                Rar
3      Jonas                  2                Flink
                              3                Sej
                              3                Klog
                              1                Fin

User_ID er fremmed nøgle til ID i users tabellen.

Skal brugen en liste over brugere med deres properties komma sepereret.

Resultat
----------
Mogens    Tyk,Rar,Fin
Fin      Flink
Jonas    Sej,Klog

Er det muligt at trække det direkte ud i sql, eller er jeg nød til at loaded en user af gangen og så hente properties for den user?
Avatar billede Syska Mester
14. februar 2012 - 23:04 #1
Du kan lave en JOIN af de to tables på din Primary/Foreign Key.

Overstående kan du gøre, men det bør gøres i din kode(Business Logic) og ikke i din SQL database.

Men her er et link:
http://stackoverflow.com/questions/194852/concatenate-many-rows-into-a-single-text-string

mvh
Avatar billede janus_007 Nybegynder
15. februar 2012 - 21:15 #2
Hvorfor har du i det hele taget normaliseret det sådan? Hvorfor ikke bare lægge de properties på en række evt. sammen med Users?
Avatar billede Syska Mester
15. februar 2012 - 21:27 #3
Der kan vel være andre grunde. Måske dette bare skulle bruges til et specielt udtræk.

mvh
Avatar billede janus_007 Nybegynder
16. februar 2012 - 11:42 #4
hmm måske... jeg ser bare ofte en tendens til overnormalisering uden anden grund end "the key, the whole key and nothing but the key", hvilket er fint og godt hvis man vil have gode karakterer i skolen, men knapt så anvendeligt i den praktiske sfære.
Avatar billede Syska Mester
16. februar 2012 - 13:04 #5
Helt enig. Derfor er jeg selv på mange små projekter begyndt at bruge dokument databaser, da det er så meget nemmere at arbejde med.

mvh
Avatar billede janus_007 Nybegynder
16. februar 2012 - 16:45 #6
True.... :)
Kender du til RavenDB?
Jeg har længe villet kigge nærmere på den, men er ikke rigtigt kommet videre.
Avatar billede Syska Mester
16. februar 2012 - 18:15 #7
Kender godt RavenDB, og synes det er spændende, men synes dog bedre om MongoDB, da den er mere moden.

Men ... alt sammen et spm om hvad man søger i en docdb.

mvh
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester