|
| MySQL: nested query (tror jeg nok) Fra : Daniel Overby |
Dato : 07-06-05 22:14 |
|
Jeg har en tabel med an attribut kaldet dealers og en kaldet comparisonID.
Nu vil jeg gerne vide antallet af tupler for hver dealer, hvor comparisonID
= null.
Hvordan klares dette? Har prøvet med noget ala:
SELECT DISTINCT dealers, countNulls as (SELECT count(*) FROM table WHERE
dealers = ?) FROM table
Dette virker dog ikke i Mysql 4.1 - den melder om en syntax-fejl.
- Daniel
| |
Martin (07-06-2005)
| Kommentar Fra : Martin |
Dato : 07-06-05 23:00 |
|
Daniel Overby wrote:
> Jeg har en tabel med an attribut kaldet dealers og en kaldet comparisonID.
>
> Nu vil jeg gerne vide antallet af tupler for hver dealer, hvor comparisonID
> = null.
>
> Hvordan klares dette? Har prøvet med noget ala:
>
> SELECT DISTINCT dealers, countNulls as (SELECT count(*) FROM table WHERE
> dealers = ?) FROM table
>
> Dette virker dog ikke i Mysql 4.1 - den melder om en syntax-fejl.
>
> - Daniel
>
>
SELECT count(*) FROM table WHERE dealers = NULL OR dealers = ""
Mon det virker ?
| |
Nis Jorgensen (08-06-2005)
| Kommentar Fra : Nis Jorgensen |
Dato : 08-06-05 00:10 |
|
On Tue, 7 Jun 2005 23:13:34 +0200, "Daniel Overby"
<mailFJERN@overbyhansenFJERN.dk> wrote:
>Jeg har en tabel med an attribut kaldet dealers og en kaldet comparisonID.
>
>Nu vil jeg gerne vide antallet af tupler for hver dealer, hvor comparisonID
>= null.
>
>Hvordan klares dette?
Foerst: Jeg haaber ikke din tabel hedder "table". Det er ikke noget
godt navn.
Dernaest:
SELECT dealers, count(*)
FROM table
WHERE comparisonID IS NULL
GROUP BY dealers
> Har prøvet med noget ala:
>
>SELECT DISTINCT dealers, countNulls as (SELECT count(*) FROM table WHERE
>dealers = ?) FROM table
>
>Dette virker dog ikke i Mysql 4.1 - den melder om en syntax-fejl.
Du har galt fat i syntaxen - du skal have "AS kolonnenavn" efter
udtrykket:
SELECT DISTINCT dealers, (SELECT count(*) FROM table WHERE dealers =
?) AS countNulls FROM table
Det skulle kunne faas til at virke med lidt ekstra arbejde (du mangler
IS NULL samt at skelne mellem de to "table"-referencer) - men
ovenstaaende er nemmere.
--
Nis Jorgensen
Midlertidigt uden ae oe og aa. Jeg beklager.
| |
|
|