Forum » Programiranje » [MariaDB] Zakaj "COUNT" vrača NULL vrednost, kadar WHERE pogoj ni izpolnjen?
[MariaDB] Zakaj "COUNT" vrača NULL vrednost, kadar WHERE pogoj ni izpolnjen?
HotBurek ::
Dobro jutro.
Evo, nov dan, nov izziv.
Imam tabelo test1, z enim stolpcem text1.
V tabeli so sledeči podatki:
Potem poženem sledeč query:
Zanima me, zakaj pri uporabi COUNT in WHERE pogoja dobim ven NULL za primer, ko WHERE pogoj ni izpolnjen?
-------------------------------------------------
Aha, i see.
Treba je dodati GROUP BY.
Well done.
Evo, nov dan, nov izziv.
Imam tabelo test1, z enim stolpcem text1.
V tabeli so sledeči podatki:
text1| -----+ a |
Potem poženem sledeč query:
SELECT `text1`, COUNT(`text1`) AS 'count' FROM `test1` WHERE `text1` = 'b';
Zanima me, zakaj pri uporabi COUNT in WHERE pogoja dobim ven NULL za primer, ko WHERE pogoj ni izpolnjen?
text1 |count| ------+-----+ [NULL]| 0|
-------------------------------------------------
Aha, i see.
Treba je dodati GROUP BY.
Well done.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window
- spremenilo: HotBurek ()
DamijanD ::
oracle in mssql tega ne dovolita.
Ampak vprašanje je zakaj sploh rabiš selektirat stolpec, če imaš vrednost že znano v where pogoju, tako da imaš lahko:
SELECT COUNT(`text1`) AS 'count'
FROM `test1`
WHERE `text1` = 'b';
to pa dela...
Ampak vprašanje je zakaj sploh rabiš selektirat stolpec, če imaš vrednost že znano v where pogoju, tako da imaš lahko:
SELECT COUNT(`text1`) AS 'count'
FROM `test1`
WHERE `text1` = 'b';
to pa dela...
HotBurek ::
Stolpec se selekta zato, ker se rezultat tega select-a potem inserta v tabelo. Se pravi, koliko je count za določen key.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window
Ahim ::
Stolpec se selekta zato, ker se rezultat tega select-a potem inserta v tabelo. Se pravi, koliko je count za določen key.
Ce bi tisto kar si napisal zgoraj (prilepljeno se enkrat spodaj) delovalo, bi bila vrednost reyultata za text1 kaksna?
SELECT `text1`, COUNT(`text1`) AS 'count' FROM `test1` WHERE `text1` = 'b';
ReRMh ::
saj pa si že sam napisal, da moraš uporabiti group by - že sql interpreter bi moral javiti napako brez...
HotBurek ::
Celoten query je bil tak:
SELECT ...
FROM ...
WHERE ...
UNION
SELECT ...
FROM ...
WHERE ...
GROUP BY ...
In sem narobe predvidel, da GROUP BY "potegne" čez vse. Tako semo moral dodat še en GROUP BY za prvi select in to je rešilo zadevo.
SELECT ...
FROM ...
WHERE ...
UNION
SELECT ...
FROM ...
WHERE ...
GROUP BY ...
In sem narobe predvidel, da GROUP BY "potegne" čez vse. Tako semo moral dodat še en GROUP BY za prvi select in to je rešilo zadevo.
root@debian:/# iptraf-ng
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window
fatal: This program requires a screen size of at least 80 columns by 24 lines
Please resize your window
FireSnake ::
Jezus Marija!
Vseskozi ista zgodba: naspama z nepopolno kodo in nepopolnim vprašanjem in pol odgovarja sam sebi. Ker pomagat se mu da le delno.
Neverjetno!
In modi to pustijo. Je kar malo žalostno.
Vseskozi ista zgodba: naspama z nepopolno kodo in nepopolnim vprašanjem in pol odgovarja sam sebi. Ker pomagat se mu da le delno.
Neverjetno!
In modi to pustijo. Je kar malo žalostno.
Poglej in se nasmej: vicmaher.si
kuall ::
me zanima ko bi te vidu v živo če bi bil un aha moment, zdaj razumem , zakaj fante sprašuje tako čudaška fprašanja na sit forumu mlad al pa retardiran, to bi bilo logično
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Kako pohitrit build-anje index za autocomplete?Oddelek: Programiranje | 1074 (606) | DamijanD |
» | Kako napisat SQL query?Oddelek: Programiranje | 1307 (513) | HotBurek |
» | [MariaDB] Kolikokrat se pojavi tekst v tekstu?Oddelek: Programiranje | 816 (509) | BigWhale |
» | Podatkovne baze - SQL enostavne poizvedbeOddelek: Programiranje | 2063 (1656) | galu |
» | Normalizirana struktura - queryOddelek: Programiranje | 1727 (1347) | frudi |