Avatar billede cobra Nybegynder
05. december 2006 - 14:39 Der er 10 kommentarer og
1 løsning

Forspørgelse på et komma felt

Jeg vil lave et udtræk fra databsen, på et felt som hedder varegrupper.
I den står der 45,46,78,90 fx
Når jeg så lave en request på den hedder linket default.asp?varegruppe=45
Hvordan kan jeg så lave en forspørgelse på den.
Normalt er der kun et tal i felt, også er det nemt at lave en forspørgelse, sådan her (sql = "select * from varer where variantvarer = 0 and varegruppe = " & request.querystring("VareGruppeID") & " order by id asc")

Men nu vil jeg have at vare kan ligge i flere varegrupper.
Hvordan laver man så forspørgelsen?
Avatar billede fennec Nybegynder
05. december 2006 - 14:46 #1
Du kan måske bruge IN () metoden:

sql = "select * from varer where variantvarer = 0 and  " & request.querystring("VareGruppeID") & " in (varegruppe) order by id"
Avatar billede fennec Nybegynder
05. december 2006 - 14:48 #2
Men det mest rigtige er at bruge en mellem tabel. "aa,bb,cc" tekster høre ikke til i en database. De skal ligges i en mellem tabel, som indeholder vareId og gruppeID:

[vare2group]
vareID, groupID
1, 2
1, 5
2, 3
4, 2
Avatar billede cobra Nybegynder
05. december 2006 - 15:01 #3
Det felt jeg har nu..er kun til at ligge vare grupper i...
Avatar billede cobra Nybegynder
05. december 2006 - 15:05 #4
Få denne fejl med det første metode
Syntax error converting the varchar value '87, 74 ' to a column of data type int.
Avatar billede fennec Nybegynder
05. december 2006 - 15:12 #5
hvilken database bruger du??
Avatar billede cobra Nybegynder
05. december 2006 - 15:17 #6
MS SQL
Avatar billede fennec Nybegynder
05. december 2006 - 15:23 #7
Har lige kørt en test på MS-SQL og den vil ikke tage den metode. Hvilket ikke er så mærklige den vi prøver at bruge den omvendt. Dette er den rigtige metode til at bruge in (bare så du ved det)

select * from enTabel where enTalKolonne in (1,2,8,7,9)
select * from enTabel where enTekstKolonne in ('abc','def','klm')

Tror du bliver nød til at lave den mellem tabel jeg nævnte i min 2. post. Det er også den rigtige måde at lave det på.
Avatar billede ldanielsen Nybegynder
06. december 2006 - 12:55 #8
Jeg gir fennec ret, der skal en tabel ind imellem. Det er jo en mange-til-mange relation du laver, og det er måden at gøre det på.
Avatar billede cobra Nybegynder
08. august 2007 - 17:43 #9
svar
Avatar billede fennec Nybegynder
13. august 2007 - 08:18 #10
OK... Tak for point... Nå nej, dem tog du jo selv... Hvorfor det??
Avatar billede cobra Nybegynder
13. august 2007 - 12:31 #11
Fordi det er over et år siden...og ville bare lukke det
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
Kurser inden for grundlæggende programmering

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