[mysql] count probleem

Pagina: 1
Acties:

  • HenkS
  • Registratie: Mei 2000
  • Laatst online: 21:01

HenkS

Da_king alias HenkS

Topicstarter
ik heb de volgende query:

select p.p_id, p.achternaam, a.merk, a.type, count(p.achternaam) as teller
from particulier as p, auto as a
where p.p_id=a.k_id
group by p.achternaam, a.merk, a.type


maar nu wil ik alles selecteren waar teller>1

maar dit is volgens mij onmogelijk om dit ook in deze query te doen he?? dit zal ik dan in php moeten oplossen, of zie ik dit verkeerd?

  • Dennis
  • Registratie: Februari 2001
  • Laatst online: 22:39
WHERE count(p.achternaam) > 1

?

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Wat wil je nou?
Ik ken de vraag niet die je wilt beantwoorden met deze query. Kan je die ook geven?

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Op vrijdag 05 april 2002 13:44 schreef ddc het volgende:
WHERE count(p.achternaam) > 1

?
Dit kan iig niet. het zou dan moeten zijn:
code:
1
HAVING count(p.achternaam) > 1

  • HenkS
  • Registratie: Mei 2000
  • Laatst online: 21:01

HenkS

Da_king alias HenkS

Topicstarter
Op vrijdag 05 april 2002 13:44 schreef ddc het volgende:
WHERE count(p.achternaam) > 1

?
ja dat dacht ik dus ook, maar dan krijg ik dus een error??? volgens mij is dit dus helemaal niet mogelijk...... omdat ik mijn query erbij te duwen, dat ik dus in 1 en dezelfde query een count doe en dan weer een WHERE op die zelfde count....

  • HenkS
  • Registratie: Mei 2000
  • Laatst online: 21:01

HenkS

Da_king alias HenkS

Topicstarter
Op vrijdag 05 april 2002 13:45 schreef Goodielover het volgende:

[..]

Dit kan iig niet. het zou dan moeten zijn:
code:
1
HAVING count(p.achternaam) > 1
dit gaat ook niet, volgens mij botst dit met het group by gedeelte ofzo ??

  • drGoeroe
  • Registratie: Januari 2002
  • Laatst online: 04-09-2021
Op vrijdag 05 april 2002 13:45 schreef Goodielover het volgende:

[..]

Dit kan iig niet. het zou dan moeten zijn:
code:
1
HAVING count(p.achternaam) > 1
Waarom werkt WHERE daar niet en HAVING wel dan?

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Doe lees mijn post en volgens mij wil je het aantal auto's tellen? Maak er dan ook maar gewoon count( * ) van.

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

having kan een voorwaarde stellen op de te selecteren group

Doet iets met Cloud (MS/IBM)


  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Omdat where een beperking is van de records die in de count worden meegenomen. Als je op de geaggregeerde gegevens nog een conditie wilt leggen, doe je dat met een HAVING.

zie ook www.mysql.com/doc
Op vrijdag 05 april 2002 13:48 schreef CrAzY_R het volgende:

[..]

Waarom werkt WHERE daar niet en HAVING wel dan?

  • HenkS
  • Registratie: Mei 2000
  • Laatst online: 21:01

HenkS

Da_king alias HenkS

Topicstarter
nee natuurlijk wil ik niet het aantal auto's tellen

daarom is die group by ook

wat namelijk gebeurt is dat op mijn auto site sommige particulieren dubbele invoeren maken, en als je een dubbele invoer hebt zijn achternaam (of id) + merk+type het zelfde, daarom die group by en als je dan >1 hebt, heb je dus een dubbele invoer, dus kan ik geen count ( * ) doen


maarre het werkt nu nog niet...

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

blijft mijn opmerking van count ( * ) staan.
post het nieuwe statement nog maar eens

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

volgens mij is er dan eerder iets mis met je database-ontwerp, maar dat is natuurlijk weer iets anders...

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Eigenlijk zou je de p_id ook moeten opnemen in de group by

  • TheDane
  • Registratie: Oktober 2000
  • Laatst online: 23:00

TheDane

1.618

Op vrijdag 05 april 2002 13:51 schreef HenkS het volgende:
nee natuurlijk wil ik niet het aantal auto's tellen

daarom is die group by ook

wat namelijk gebeurt is dat op mijn auto site sommige particulieren dubbele invoeren maken, en als je een dubbele invoer hebt zijn achternaam (of id) + merk+type het zelfde, daarom die group by en als je dan >1 hebt, heb je dus een dubbele invoer, dus kan ik geen count ( * ) doen


maarre het werkt nu nog niet...
ik zou zeggen: zorg er dan voor dat een gebruiker geen dubbele invoer kan doen

  • HenkS
  • Registratie: Mei 2000
  • Laatst online: 21:01

HenkS

Da_king alias HenkS

Topicstarter
Op vrijdag 05 april 2002 13:57 schreef TheDane het volgende:

[..]

ik zou zeggen: zorg er dan voor dat een gebruiker geen dubbele invoer kan doen
ja ok, dat kan maar nu eerst dit probleem!!!

ok ik heb nu deze query , ff p_id erin gezet:

select p.p_id, p.achternaam, a.merk, a.type, count(p.p_id) as teller
from particulier as p, auto as a
where p.p_id=a.k_id
group by p.p_id, a.merk, a.type

dan krijg ik bij teller allemaal 1-en en soms wat 2-en dus dat zijn de dubbele, deze query is perfect

nu maak ik dan dit ervan:

select p.p_id, p.achternaam, a.merk, a.type, count(p.p_id) as teller
from particulier as p, auto as a
where p.p_id=a.k_id
having count(p.p_id)>1
group by p.p_id, a.merk, a.type

en dan krijg ik dus een error wat doe ik dan fout?

  • HenkS
  • Registratie: Mei 2000
  • Laatst online: 21:01

HenkS

Da_king alias HenkS

Topicstarter
sorry stom stom stom

having count na het order by statement is wat handiger, ook erg logisch.... stom stom stom

  • Goodielover
  • Registratie: November 2001
  • Laatst online: 18-08 11:34

Goodielover

Only The Best is Good Enough.

Op vrijdag 05 april 2002 14:00 schreef HenkS het volgende:
sorry stom stom stom

having count na het order by statement is wat handiger, ook erg logisch.... stom stom stom
HAVING na de GROUP BY bedoel je hopelijk (graag gedaan, hoor)
Gefeliciteerd met je nieuwe baan. Straks weer SQL-tjes bakken?

  • HenkS
  • Registratie: Mei 2000
  • Laatst online: 21:01

HenkS

Da_king alias HenkS

Topicstarter
haha ja :) maar geen websites meer maken gelukkig

lekker perl, php, mysql, veel dns zooi enzo :)
Pagina: 1