Új hozzászólás Aktív témák

  • DeFranco

    nagyúr

    újabb problémába futottam bele, lehet egy kicsit vadulok már ezzel:

    adott egy lekérdezés, ami elég hosszú, több subqueryből áll,

    gyakorlatilag legyártok néhány kereszttáblát, majd ezeket joinolom egymás után, egyes kereszttáblákban nyers adatok vannak, más kereszttáblákban számított adatok.

    pl.
    1: munkavállalók havi keresete, havonkénti bontásban (KH)
    2: munkavállalók keresete legyártott darabonként havonkénti bontásban (KHD)
    3: munkavállalók éves keresete (K)
    4: munkavállalók anyagfelhasználása havonkénti bontásban (AH)
    5: munkavállalók anyagfelhasználása legyártott darabonként havonkénti bontásban (AHD)
    6: munkavállalók éves anyagköltsége (A)

    a joinok miatt minden ilyen szakasz el is van nevezve (Pl. KHD, AHD), ezek alapján tudom K.Y=KHD.B módon kapcsolni.

    a lekérdezés végére szeretnék tenni még egy kereszttáblát de azt már lehetőleg úgy, hogy az néhány korábbi subquery eredményére hivatkozzon, pl.

    SELECT
    K.[munkavállaló] "MUNK"
    KHD.[érték]/AHD.[érték] AS "KPERA"
    KH.[hónapazonosító] AS "HO"
    FROM
    ???
    PIVOT
    (
    SUM(KPERA)
    FOR HO IN (...)
    )

    Nem tudom hogy a felső subqueryket így meg tudom-e csapolni, jelenleg nem tudom megoldani, és ötletem sincs mit lehetne tenni a FROM mögé mert a subquery neveket nem akarja "fogyasztani"

    egy nagy selecten belül kell mindent megoldanom, táblát gyártani nincs jogosultságom.

    érzésem szerint amit egyszer valahol már legyártottam azt fel kellene tudnom használni úgy hogy nem ismétlem meg azt a kódrészt még egyszer de nem jövök rá hogy kellene ezt megtennem.

    [ Szerkesztve ]

Új hozzászólás Aktív témák