09. oktober 2007 - 12:42Der er
9 kommentarer og 1 løsning
En anden måde at lave mange AND efterlyses
Mit program genererer følgende script:
select bolig_ref from BoligAttributRel where (1 = 1) and (attribut_ref = 1) and (attribut_ref = 51) and (attribut_ref = 2) and (attribut_ref = 11) and (attribut_ref = 521) and (attribut_ref = 9) and (attribut_ref = 4);
Det kan blive til mange AND'er og spørgsmålet er om man gøre det på en anden måde, eventuelt en der minder om IN-operatoren? Pseudoeksempelvis:
select bolig_ref from BoligAttributRel where (attribut_ref "ISALL" (1,51,2,11,521,9,4));
Jeg er ret sikker på MSSQL, når den fortolker en eventuel løsning, vil lave det om til mit nuværende script, men kan man koge det voluminøse script ned.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Jeg vil skyde på han vil have de bolig_ref der opfylder alle attributter.
Utestet, men må være ca. sådan: SELECT bolig_ref FROM BoligAttributRel WHERE attribut_ref IN (1,51,2,11,...) GROUP BY bolig_ref HAVING COUNT(bolig_ref)=AntalAttributter
rif1900: Det er en mange-til-mange tabel, og hrc vil have alle de boliger der har et bestemt sæt attributter (og evt. flere). Han fik bare ikke formuleret det helt så godt. ;)
pidgeot: Takker, var da godt nok en smule forvirret hehe :)
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.