Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pomoc oko prikaza podataka

[es] :: MS SQL :: Pomoc oko prikaza podataka

[ Pregleda: 942 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

darko.ostojic

Član broj: 345648
Poruke: 7
*.dynamic.isp.telekom.rs.



Profil

icon Pomoc oko prikaza podataka07.10.2021. u 16:26 - pre 30 meseci
Pozdrav svima,

Code (sql):

CREATE TABLE zaposleni_oprema (
  uniqueid INT IDENTITY
 ,zaposleni_fk INT NULL
 ,oprema_fk INT NULL
 ,vrednost NVARCHAR(50) NULL
 ,CONSTRAINT PK_zaposleni_oprema_uniqueid PRIMARY KEY CLUSTERED (uniqueid)
) ON [PRIMARY]
GO

CREATE TABLE sf_zaposleni_oprema (
  uniqueid INT IDENTITY
 ,naziv NVARCHAR(100) NULL
 ,CONSTRAINT PK_sf_zaposleni_oprema_uniqueid PRIMARY KEY CLUSTERED (uniqueid)
) ON [PRIMARY]
GO

CREATE TABLE zaposleni (
  uniqueid INT IDENTITY
 ,ime NVARCHAR(100) NULL
 ,CONSTRAINT PK_sf_zaposleni_uniqueid PRIMARY KEY CLUSTERED (uniqueid)
) ON [PRIMARY]
GO
 


imam 3 tabele (zaposleni, sf_zaposleni_oprema i zaposleni_oprema):
zaposleni:
uniqueid, ime
1 Marko,
2 Janko
....
sf_zaposleni_oprema:
uniqueid, naziv
1 Cipela,
2 Majica
....
zaposleni_oprema:
uniqueid, zaposleni_fk, oprema_fk, vrednost
1 1 1 42
2 1 2 XL
3 2 2 M

kako mogu da dobijem ovakav prikaz:
Zaposleni_pregled:
Ime, Cipela, Majica
Marko 42 XL
Janko M

nadam se da ste me razumjeli stim sto se sifrarnik tj tabela "sf_zaposleni_oprema" moze dopunjavati. Hvala na odgovoru
 
Odgovor na temu

madcama
Valjevo

Član broj: 103936
Poruke: 794
*.dynamic.sbb.rs.



+184 Profil

icon Re: Pomoc oko prikaza podataka07.10.2021. u 22:50 - pre 30 meseci
join?
Po temi http://www.elitesecurity.org/t385534-0 ja sam terorista.
Use The Force my young Luke Filewalker.
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3445

Jabber: djoka_l


+1462 Profil

icon Re: Pomoc oko prikaza podataka07.10.2021. u 23:40 - pre 30 meseci
Nemoj to da radiš u SQL-u
To ti je pivot tabela, napravi normalan upit, pa uradi pivot u Excelu.

 
Odgovor na temu

darko.ostojic

Član broj: 345648
Poruke: 7
94.250.80.*



Profil

icon Re: Pomoc oko prikaza podataka08.10.2021. u 20:00 - pre 30 meseci
Citat:
djoka_l: Nemoj to da radiš u SQL-u
To ti je pivot tabela, napravi normalan upit, pa uradi pivot u Excelu.


to sam i ja kontao da je mozda najbolje resenje stim sto ne prikazujem u excel-u nego u c#. Hvala na odgovoru!
 
Odgovor na temu

Jpeca
Predrag Jovanović
poslovni analitičar
Gowi
Pančevo

Član broj: 25683
Poruke: 2267
*.mediaworksit.net.

Sajt: www.gowi.rs


+109 Profil

icon Re: Pomoc oko prikaza podataka08.10.2021. u 21:05 - pre 30 meseci
Ako ti nije zgodno da koristiš Excel kako je djoka_l naveo možeš da iskoristiš PIVOT funkciju SQL
Code:

SELECT * FROM (
    SELECT Z.Ime, O.Naziv, R.vrednost
    FROM Zaposleni Z
    INNER JOIN Zaposleni_oprema R ON R.zaposleni_fk = Z.uniqueid
    INNER JOIN sf_zaposleni_oprema O ON O.uniqueid = R.oprema_fk 
) T
PIVOT (
  MAX(vrednost) 
  FOR naziv in (Cipela, Majica)
) PIV


Ako je niz kolona u izrazu FOR promenljiv situacija je nešto komplikovanija - potreban je dynamic SQL
https://stackoverflow.com/ques...-rows-to-columns-in-sql-server ,
ali pošto ti ovo zoveš iz C# onda niz u zagradama (Cipela, Majica,...) možeš da formiraš u kodu iz prethodnog SELECT Naziv FROM sf_zaposleni_oprema

Nije to loše Rembrante, samo što ne bi dodao još malo boje?
 
Odgovor na temu

[es] :: MS SQL :: Pomoc oko prikaza podataka

[ Pregleda: 942 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.