[sql] Acces blijft zeuren bij count functie

Pagina: 1
Acties:

  • eppie
  • Registratie: Maart 2000
  • Niet online
(overleden)
Hallo,

Wat is er fout aan deze query?
code:
1
2
3
4
SELECT mpodel.art_no, mart.art_desc, count(mpodel.art_no)
FROM mpo, mpodel, mart
WHERE mpo.SUP_NO=621405 And mpo.pur_ord_no=mpodel.pur_ord_no And mpodel.art_no=mart.art_no
GROUP BY mpodel.art_no;


Zodra ik de count + group by weglaat dan werkt het wel maar zodra ik de count er weer bij zet begint access te zeuren.
You tried to execute a query that does not include the specified expression 'art_desc'
as part of an aggregate function
De zelfde query op een mysql database doet het wel goed.

Vat er niets van, een simpele count query doet het daar in tegen wel weer goed in access. De database is een odbc databron.

Alvast bedankt

[ Voor 13% gewijzigd door eppie op 28-01-2005 14:59 ]


  • Roeligan
  • Registratie: December 2001
  • Laatst online: 22-07-2025

Roeligan

Feyenoord

Tja.... mysql syntax op een access db loslaten lijkt me ook geen goed idee... syntactisch is het goed, werk niet met access verder.

A real man fears not mortality for it's death, he fears mortality for it's lack of life!
RatPack #814


  • NetForce1
  • Registratie: November 2001
  • Laatst online: 23-03 10:29

NetForce1

(inspiratie == 0) -> true

Alle velden die niet in een geagregeerde functie zitten moet je opgeven in de group by, je query wordt dus:
SQL:
1
2
3
4
SELECT mpodel.art_no, mart.art_desc, count(mpodel.art_no)
FROM mpo, mpodel, mart
WHERE mpo.SUP_NO=621405 And mpo.pur_ord_no=mpodel.pur_ord_no And mpodel.art_no=mart.art_no
GROUP BY mpodel.art_no, mart.art_desc;

In de FAQ staat hier ook een mooi stukje over, ff zoeken...
hier dus: P&W FAQ - SQL

[ Voor 7% gewijzigd door NetForce1 op 28-01-2005 15:03 ]

De wereld ligt aan je voeten. Je moet alleen diep genoeg willen bukken...
"Wie geen fouten maakt maakt meestal niets!"


  • lier
  • Registratie: Januari 2004
  • Laatst online: 00:29

lier

MikroTik nerd

Zoals de foutmelding ook aangeeft vergeet je een veld in je group by mee te nemen:

GROUP BY mpodel.art_no, mart.art_desc;

Het verbaast mij trouwens dat MySQL wel iets terug geeft. Ik was in de verronderstelling dat zij zich wel aardig aan de standaarden van SQL houdt...

Wat geeft MySQL eigenlijk terug (kan me haast niet voorstellen dat hier iets zinnigs uit komt !?

offtopic:
Soms zijn de foutboodschappen van Microsoft bruikbaar...

[ Voor 38% gewijzigd door lier op 28-01-2005 15:04 ]

Eerst het probleem, dan de oplossing


  • eppie
  • Registratie: Maart 2000
  • Niet online
(overleden)
Bedankt voor de snelle replys ik ga het meteen proberen _/-\o_

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
[quote]lier schreef op vrijdag 28 januari 2005 @ 15:02:


Het verbaast mij trouwens dat MySQL wel iets terug geeft. Ik was in de verronderstelling dat zij zich wel aardig aan de standaarden van SQL houdt...
[\quote]
MySQL maakt van veel meer dingen een zootje. User 'ACM' heeft wel een aardige link in z'n sig

[ Voor 29% gewijzigd door P_de_B op 28-01-2005 15:11 ]

Oops! Google Chrome could not find www.rijks%20museum.nl


  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

P_de_B schreef op vrijdag 28 januari 2005 @ 15:10:
[...]
MySQL maakt van veel meer dingen een zootje. User 'ACM' heeft wel een aardige link in z'n sig
http://vulcanus.its.tudelft.nl/acm/got/antimysql.php <-- Deze link

Programmer - an organism that turns coffee into software.


  • sopsop
  • Registratie: Januari 2002
  • Laatst online: 11-05 08:55

sopsop

[v] [;,,;] [v]

Volgens mij moet je bij een aggregate functie in Access een alias opgeven:
code:
1
count(mpodel.art_no) as aantalartikelen

[ Voor 13% gewijzigd door sopsop op 28-01-2005 15:32 ]


  • NMe
  • Registratie: Februari 2004
  • Laatst online: 15-04 22:07

NMe

Quia Ego Sic Dico.

boppert schreef op vrijdag 28 januari 2005 @ 15:31:
Volgens mij moet je bij een aggregate functie in Access een alias opgeven:
code:
1
count(mpodel.art_no) as aantalartikelen
Bij mijn weten niet hoor. Al is het natuurlijk wel handiger in het gebruik als je daarna nog met een scriptingtaal aan de gang moet. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.

Pagina: 1