Toon posts:

[ASP/DB2000] 2 keuzes

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb hier een datingscript. Niet zelf gemaakt, maar ik zou graag wat dingen willen aanpassen. Het orgineel werkte alleen met mannen & vrouwen en ik wil ook "stellen" toevoegen, maar ik loop ergens vast:

code:
1
2
3
4
5
6
7
8
9
count_sqry1 = "Select count(*) as 1_count From p_ads where p_sex = 1 AND p_seek = 1 OR 2 AND p_active = 0"
count_sqry2 = "Select count(*) as 2_count From p_ads where p_sex = 1 AND p_seek = 3 OR 2 AND p_active = 0"
count_sqry3 = "Select count(*) as 3_count From p_ads where p_sex = 2 AND p_seek = 1 OR 2 AND p_active = 0"
count_sqry4 = "Select count(*) as 4_count From p_ads where p_sex = 2 AND p_seek = 3 OR 2 AND p_active = 0"
count_sqry5 = "Select count(*) as 5_count From p_ads where p_sex = 1 AND p_seek = 4 OR 2 AND p_active = 0"  
count_sqry6 = "Select count(*) as 6_count From p_ads where p_sex = 2 AND p_seek = 4 OR 2 AND p_active = 0"  
count_sqry7 = "Select count(*) as 7_count From p_ads where p_sex = 3 AND p_seek = 3 OR 2 AND p_active = 0"  
count_sqry8 = "Select count(*) as 8_count From p_ads where p_sex = 3 AND p_seek = 1 OR 2 AND p_active = 0"  
count_sqry9 = "Select count(*) as 9_count From p_ads where p_sex = 3 AND p_seek = 4 OR 2 AND p_active = 0"


p_sex is wat je bent (1 = vrouw, 2 = man, 3 = stel) p_seek is wat je zoekt (1 = vrouw, 2 = ALLES, 3 = man, 4 = stel).

Het gaat om het stukje p_seek = .. OR .. dat "OR" is blijkbaar geen commando ofzo :) maar hoe moet het wel? Ik had als eerste p_seek BETWEEN .. AND .. Dit leek te werken; maar bij 3 combinaties, gaf hij 1 resultaat te veel...

Ik hoop dat het een beetje duidelijk is, misschien is de oplossing wel zeer simpel. Maar ik als ASP-n00b kom er niet uit ;)

  • whoami
  • Registratie: December 2000
  • Laatst online: 22:02
haakjes gebruiken.

https://fgheysels.github.io/


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Je zegt nu:
conditie 1: p_seek = 1
conditie 2: 2

Wat is 2? Je moet wel je SQL goed opbouwen..

[ Voor 16% gewijzigd door gorgi_19 op 12-04-2003 15:32 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
ik heb haakjes gebruikt p_seek = (.. OR ..), maar dat werkte niet. Of bedoelde je dat niet?

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 12 April 2003 @ 15:34:
ik heb haakjes gebruikt p_seek = (.. OR ..), maar dat werkte niet. Of bedoelde je dat niet?
Ik bedoelde dat iig niet. Je 2 staat nu als een los, ongerelateerd iets.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
gorgi_19 schreef op 12 april 2003 @ 15:35:
[...]

Ik bedoelde dat iig niet. Je 2 staat nu als een los, ongerelateerd iets.
Dat is het probleem, hij moet resultaat geven als p_seek bijvoorbeeld 1 is of wanneer hij 2 is. Maar wat is de commando voor dat "of"....

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Verwijderd schreef op 12 April 2003 @ 15:38:
[...]


Dat is het probleem, hij moet resultaat geven als p_seek bijvoorbeeld 1 is of wanneer hij 2 is. Maar wat is de commando voor dat "of"....
WHERE a = 1 OR a = 2

[ Voor 4% gewijzigd door gorgi_19 op 12-04-2003 15:41 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
Bedoel je

p_seek WHERE a = 1 OR a = 2

of

p_seek = WHERE a = 1 OR a = 2

of nog iets anders? want deze 2 werken niet: HTTP-fout 500 - Interne serverfout. Als ik iets meer van ASP af zou weten zou ik je denk ik wel begrijpen ;)

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Nee, dat was pseudo code
kolomnaam = 1 OR kolomnaam = 2

En dit heeft niets met ASP nog te maken, maar met SQL

[ Voor 49% gewijzigd door gorgi_19 op 12-04-2003 15:52 ]

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • whoami
  • Registratie: December 2000
  • Laatst online: 22:02
Verwijderd schreef op 12 April 2003 @ 15:49:
Bedoel je

p_seek WHERE a = 1 OR a = 2

of

p_seek = WHERE a = 1 OR a = 2

of nog iets anders? want deze 2 werken niet: HTTP-fout 500 - Interne serverfout. Als ik iets meer van ASP af zou weten zou ik je denk ik wel begrijpen ;)
Je moet niet meer van ASP afweten, maar van SQL.
Misschien heb je hier wel wat aan.

Schrijf je queries eens op in gewoon nederlands en zet ze dan om naar SQL.

Ik kan me voorstellen dat je die eerste bv zo zult moeten schrijven:
code:
1
where p_sex = 1 AND (p_seek = 1 OR p_seek = 2) AND p_active = 0

of ook nog :
code:
1
where p_sex = 1 AND p_seek IN (1, 2) AND p_activie = 0

[ Voor 27% gewijzigd door whoami op 12-04-2003 15:53 ]

https://fgheysels.github.io/


Verwijderd

Topicstarter
Ja erg bedankt, maar ben ik nou helemaal verkeerd aan het denken? Ik had eerst dit:

code:
1
2
3
4
5
6
7
8
9
count_sqry1 = "Select count(*) as 1_count From p_ads where p_sex = 1 AND p_seek BETWEEN 1 AND 2 AND p_active = 0"
count_sqry2 = "Select count(*) as 2_count From p_ads where p_sex = 1 AND p_seek BETWEEN 2 AND 3 AND p_active = 0"
count_sqry3 = "Select count(*) as 3_count From p_ads where p_sex = 2 AND p_seek BETWEEN 1 AND 2 AND p_active = 0"
count_sqry4 = "Select count(*) as 4_count From p_ads where p_sex = 2 AND p_seek BETWEEN 2 AND 3 AND p_active = 0"
count_sqry5 = "Select count(*) as 5_count From p_ads where p_sex = 1 AND p_seek BETWEEN 2 AND 4 AND p_active = 0"  
count_sqry6 = "Select count(*) as 6_count From p_ads where p_sex = 2 AND p_seek BETWEEN 2 AND 4 AND p_active = 0"  
count_sqry7 = "Select count(*) as 7_count From p_ads where p_sex = 3 AND p_seek BETWEEN 2 AND 3 AND p_active = 0" 
count_sqry8 = "Select count(*) as 8_count From p_ads where p_sex = 3 AND p_seek BETWEEN 1 AND 2 AND p_active = 0" 
count_sqry9 = "Select count(*) as 9_count From p_ads where p_sex = 3 AND p_seek BETWEEN 2 AND 4 AND p_active = 0"


Dit werkte bijna perfect, behalve de combinaties p_sex = 1/2/3 en p_seek = 3. Dan kreeg ik 2 resultaten, terwijl ik er maar 1 wil. Dat is ook logisch, kijk maar naar het script. Dit zou toch met een kleine aanpassing wel moeten werken?

Verwijderd

Topicstarter
(p_seek = 1 OR p_seek = 2) lijkt te werken, bedankt whoami!
Pagina: 1