Avaleht
uus teema   vasta Tarkvara »  Programmeerimine »  Ridade kokkulugemine SQL'is märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale. Teata moderaatorile
otsing:  
nexus4
Kreisi kasutaja
nexus4

liitunud: 01.03.2012




sõnum 29.10.2014 13:01:18 Ridade kokkulugemine SQL'is vasta tsitaadiga

Ütleme et on tabelid Tabel1, Tabel2, ... Tabeln
Tabelites on erinev arv erinevaid veergusid
Kõik read ei ole alati täidetud (ehk on NULL'id)

Kuidas ma saan kõige lihtsamalt teada tabelis olevate veergudes olevate ridade arvu?

Näiteks tabel1's on veerud a, b, c ja d ning tulemuseks oleksid andmed:

a 100
b 90
c 75
d 88

Kus need arvud siis näitavad mitu väärtust antud veerus on.

saaks: select count(a), count(b), count(c), count(d) from tabel1
aga kuna tabeleid on kokku 25 ja veergusi osades ka 20 ringis, siis tundub jube ahvi töö olevat neid count käske kirjutada.

Kas on mingi lihtsm võimalus,
Oracle sql developer Version 2.1.1.64
Kommentaarid: 29 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 26
tagasi üles
vaata kasutaja infot saada privaatsõnum
Fukiku
Kreisi kasutaja
Fukiku

liitunud: 06.11.2003




sõnum 29.10.2014 13:12:10 vasta tsitaadiga

Üks variant oleks võtta baasist välja kõigi vajalikke veergude kohta tabelinimi+veerunimi ja siis mingi muu vahendiga selle põhjal SQL laused genereerida. Häda pärast saab isegi Excel'iga - paned lähteandmed tabelisse ja siis kolmandasse lahtrisse valemiga genereerid SQL lause.

Nende lähtenandmete saamiseks võiks kasutada mõnd kavalat Oracle data dictionary view'd, näiteks USER_TAB_COLUMNS. Siit edasiminek võiks ehk juba endale jõukohane olla. Oracle data dictionary's on ka palju muid toredaid asju, väikse ülevaate saab näiteks siit - http://ss64.com/orad/. Eks vist tegelikult elavad kõik andmebaaside haldamiseks mõeldud IDE-d nende samade view'de ja tabelite otsas, ega neil mujalt pole tabelite struktuure ja kogu muu metainfot võtta, mida nad kenasti kuvavad.

_________________
Foxic is just a simple fox
Enne kui sa küsid oma küsimuse - küsi seda vannipardilt! Rangelt soovitatav enne programmeerimise alafoorumisse uue teema tegemist.
Kommentaarid: 2 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 2
tagasi üles
vaata kasutaja infot saada privaatsõnum
nexus4
Kreisi kasutaja
nexus4

liitunud: 01.03.2012




sõnum 30.10.2014 17:43:06 vasta tsitaadiga

Tegin ahvi tööd ikkagi lõpuks. Tabeli info alt sain column name'id ilma pärimata ning excelisse tegin count käsu aluse kuhu ümber kopisin. Siis jooksutasin koostatud päringu ja tulemus käes.
Kommentaarid: 29 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 26
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  Programmeerimine »  Ridade kokkulugemine SQL'is
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.