[ASP \ SQL] query probleem met ophalen van juiste gegevens*

Pagina: 1
Acties:

  • osnatool
  • Registratie: Mei 2003
  • Laatst online: 17-10-2014
hallo, ik wil graag een query op mijn database uitvoeren, maar ik loop een beetje vast. Ik geef via een form een categorieID mee en die wil ik graag gaan gebruiken in mijn query, alleen het veld waarin hij dat moet gaan filteren heeft een andere indeling, namelijk : CategorieID.SubcategorieID.Volgnummer

Er staan dus zulke nummers in mijn database 04.12.3343

Dit is de query die ik tot nu toe heb gemaakt, er komt nu wel wat uit maar dubbele records, ik denk dat ik een fout het gemaakt in het opbouwen van de query.

code:
1
2
SQLstring = "SELECT DISTINCT a.Facet_id, Land_ID, Titel, Publicatiejaar, Sub_cat_ID " &_
"FROM Publicaties a, Publicatie_indeling WHERE Regio_ID LIKE '" & regio & "' OR Land_ID LIKE '" & country & "' OR Sub_cat_ID LIKE '0" & category & "%'"

  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
Waarom gebruik je een LIKE als je 'exact' wilt zoeken? Maw, je gebruikt een LIKE, maar je gebruikt geen wildcards. Dan kan je evengoed de = operator gebruiken.

Voor je vraag: je zou het met een LIKE icm wildcards eventueel kunnen oplossen. Een andere manier is ook om een substring te nemen van je DB veld tot aan het eerste punt, en die substring dan gebruiken om de vergelijking mee te doen.

Je titel is trouwens niet compleet. Zeg eens (via een topicreport of via SM) wat die titel moet worden, dan kan hij aangepast worden

[ Voor 15% gewijzigd door whoami op 28-01-2004 20:47 ]

https://fgheysels.github.io/


  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Slecht database model, maak het model beter en je hebt ook minder problemen...

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
dusty schreef op 28 januari 2004 @ 20:54:
Slecht database model, maak het model beter en je hebt ook minder problemen...
Dat vermoedde ik idd ook al....

https://fgheysels.github.io/


  • osnatool
  • Registratie: Mei 2003
  • Laatst online: 17-10-2014
dat weet ik ook wel, maar ik kan het niet veranderen, omdat er een probleem in zit, een boek moet dus in meerdere categorieen vallen, en ik heb ervoor gekozen omdat de boeken ook een nummertje hebben gekregen, om dus dezelfde nummering te gaan gebruiken in de database, wel zo makkelijk he.

ik had het ook heel anders kunnen opbouwen maar dat is dus voor deze reden, vandaar de vraag

  • whoami
  • Registratie: December 2000
  • Laatst online: 00:40
osnatool schreef op 28 januari 2004 @ 20:56:
dat weet ik ook wel, maar ik kan het niet veranderen, omdat er een probleem in zit, een boek moet dus in meerdere categorieen vallen, en ik heb ervoor gekozen omdat de boeken ook een nummertje hebben gekregen, om dus dezelfde nummering te gaan gebruiken in de database, wel zo makkelijk he.
Als een boek in meerdere categorieën kan vallen, dan ga je het niet oplossen zoals je het nu gedaan hebt, want je maakt het jezelf alleen maar moeilijker.

Als je het goed wilt doen, doe je het zo:

tabel: boek(boekid, boeknaam)
tabel: categorie(categorie_id, categorie)
tabel: boek_categorie(boek_id, categorie_id)

Waarbij je dus in de tabel boek_categorie kunt aangeven in welke categorieën een boek allemaal valt.

Lees misschien even dit door.

[ Voor 6% gewijzigd door whoami op 28-01-2004 21:00 ]

https://fgheysels.github.io/

Pagina: 1