» »

problem poizvedbe access

problem poizvedbe access

Neykos ::

1. Ali v bazi obstajajo osebe z istim imenom in priimkom? Najdi
jih.

2. Kateri priimek je najbolj pogost v bazi?


V glavnem pri teh dveh nevem kakšen pogoj bi uporabil. Hvala za odgovore.

Lp
  • spremenil: Neykos ()

imagodei ::

Mi tudi ne, ker ne poznamo strukture tvoje baze.
- Hoc est qui sumus -

keworkian ::

1. naredi count + group by ime, priimek
2. group by priimek + count
Obscenities in B-Flat

Neykos ::

 tukaj je še ostalo vse če bi kdo znal točno napisat hvala ;)

tukaj je še ostalo vse če bi kdo znal točno napisat hvala ;)





4. Kateri priimek je najbolj pogost v bazi?
9. Katero usposabljanje je bilo največkrat izvedeno?

imagodei ::

Če boš sliko prilimal tako, da se jo bo dalo pogledat, pol se mogoče lahko kaj zgovorimo...
- Hoc est qui sumus -

Neykos ::



evo ga ;)

Zgodovina sprememb…

  • spremenil: Neykos ()

imagodei ::

1.)
Select count(SifraUdelezenca), Ime, Priimek
From tbl_Udeleženci
Group by Ime, Priimek

- To ti pošteje vse pojavitve posameznih imen in priimkov. Če sta v bazi 2 udeleženca z istim imenom in priimkom, bo to v stolpcu COUNT prikazano kot 2. Če je v bazi samo en udeleženec z nekim konkretnim imenom in priimkom, bo v stolpcu COUNT zapisana enka.

2. oz 4.)
Select count(SifraUdelezenca), Priimek
From tbl_Udeleženci
Group by Priimek
Order by count(SifraUdelezenca) DESC

- Podobna logika kot pri ena, samo da ti grupira samo po priimkih in prešteje pojavitve unikatnih priimkov. Order by ti izpiše tabelo tako, da prva vrstica vsebuje Priimek, ki se pojavi največkrat.

9.)
Select count(tbl_IzvedenTecaj.ZapStTecaja), tbl_VrsteIzobraževanj.Naziv_Tecaja
From tbl_IzvedenTecaj, tbl_VrsteIzobraževanj
Where tbl_IzvedenTecaj.SifraVrsteTecaja = tbl_VrsteIzobraževanj.SifraVrsteTecaja
Group by tbl_VrsteIzobraževanj.Naziv_Tecaja
Order by count(tbl_IzvedenTecaj.ZapStTecaja) DESC

- tukaj povežeš med sabo dve tabeli, zato da iz tbl_VrsteIzobraževanj dobiš dejansko ime tečaja, ne samo šifro. Jaz sem tukaj uporabil v ta namen kar WHERE stavek, ki nalogo čist OK opravi; drugače se to bolj efektivno reši z JOIN stavkom. Zadevo grupiraš po Nazivu tečaja, COUNT prešteje unikatne ponovitve tečajev. ORDER BY ... DESC spet izpiše v prvi vrstici rezultata tečaj z največ ponovitvami.


Mimogrede, imena tabel in polj so napisana brez vsakega reda. V imenih tabel imaš krilate znake (čšž), v imenih polj pa ne. Tudi polja nimajo enotnega načina zapisovanja imen: imaš polje SifraVrsteTecaja (brez presledkov), takoj nato pa v isti tabeli polje Naziv_Tecaja (s podvezajem). Takšna nedoslednost vodi v cel kup težav pri pisanju poizvedb in v izgubo časa pri iskanju težav. Mogoče se je tudi meni zapisala kakšna - če ti poizvedbe ne bodo delale iz prve, preveri najprej, če nisem kje falil kakšnega podvezaja.
- Hoc est qui sumus -

Neykos ::

Hvala ti za odgovore. Baza ni moje izdelave, ker jim je profesor izdelal jaz samo pomagam poizvedbe naret pa se je pri teh oz še nekaterih od 30ih zataknilo... Še enkrat hvala. Lp

imagodei ::

U R welcome :) Zadeva dela?
- Hoc est qui sumus -

Neykos ::

Dela hvala ti. Če bom še potreboval kakšno pomoč se bom še javil, ker oni morajo to delati v čarovniku za poizvedbe ne v SQL-u tako da sem moral zdaj vse spreminjati. Hvala še enkrat ;)

imagodei ::

V čarovniku za poizvedbe MORAJO delat? Oz. ne smejo v SQL načinu? Oh, well... Kot da SQL sam po sebi ni na moč razumljiv.

Anyway, glavno da sem pomagal. Boste že naprej. Če boš pa rabil še kaj, pa povej.
- Hoc est qui sumus -


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

SQL - izpit

Oddelek: Programiranje
102035 (1059) FTad
»

SQL poizvedba

Oddelek: Programiranje
163268 (2613) awy
»

MySQL pomoc

Oddelek: Izdelava spletišč
171847 (1103) slosi
»

[Access 2007]

Oddelek: Programiranje
132627 (2227) urosz
»

SQL vprašanje

Oddelek: Izdelava spletišč
302666 (2229) jerneju

Več podobnih tem