Tema: T-SQL subquery/subselect klausimas
Autorius: Rimokas
Data: 2011-08-02 16:10:46
  Sveiki,
  Noriu is lenteles keliu irasu padaryt viena , kur virtualioj lentelej 
atsirastu papildomas laukas .

Lentele1 :
PrekesId ;
KonfigId;
Datos;
PajBusena;
IslBusena;
Kiekis;
Suma;
....
Dabar i ja isiraso pvz. pajamos - "PajBusena" - "Gauta" ir kiekis 10 vnt. 
Islaidoms - "IslBusena" - "Parduota", -5 vnt. . Reikia apyvartinima 
ziniarasciui padaryt , kad butu 2 stulpeliai , vietoj vieno "Kiekis". Pvz. 
"PajVnt"ir "IslVnt" . Kol kas iseina tokia uzklausa :

      SELECT
      lenta1.PrekesId,
      lenta1.KonfigId,
      lenta1.PajBusena,
      lenta1.Datos,
      SUM ( Kiekis ) AS kiekVnt,
      SUM ( Suma ) AS Suma1,
      lenta1.IslBusena,
      INTO lenta2  FROM lenta1
      WHERE lenta1.Datos >='2011.07.01'
      GROUP BY
      lenta1.PrekesId,
      lenta1.KonfigId,
      lenta1.PajBusena,
      lenta1.IslBusena,
      lenta1.Datos

   Kaip parasyt subselectus ? Jie gal but rasomi i sum() vidu ? Ta prasme 
but gal taip :

      SELECT
      lenta1.PrekesId,
      lenta1.KonfigId,
      lenta1.PajBusena,
      lenta1.Datos,
      SUM ( select sum( Kiekis ) where lenta1.PajBusena = "Gauta" ... ) AS 
PajVnt,
      SUM ( select sum( Kiekis ) where lenta1.IslBusena = "Parduota" ... ) 
AS IslVnt,
      SUM ( Suma ) AS Suma1,
      lenta1.IslBusena,
      INTO lenta2  FROM lenta1
      WHERE lenta1.Datos >='2011.07.01'
      GROUP BY
      lenta1.PrekesId,
      lenta1.KonfigId,
      lenta1.PajBusena,
      lenta1.IslBusena,
      lenta1.Datos

  As nelabai zinau T-SQL , o is guglas duoda daugiau apibendrinta info . O 
cia toks specifinis dalykas ...

   Is anksto dekingas uz pagalba !