sql >> Database teknologi >  >> RDS >> Oracle

Oracle SQL:Brug sekvens i indsæt med Select Statement

Hvis du antager, at du vil gruppere dataene, før du genererer nøglen med sekvensen, lyder det, som om du vil have noget lignende

INSERT INTO HISTORICAL_CAR_STATS (
    HISTORICAL_CAR_STATS_ID, 
    YEAR,
    MONTH, 
    MAKE,
    MODEL,
    REGION,
    AVG_MSRP,
    CNT) 
SELECT MY_SEQ.nextval,
       year,
       month,
       make,
       model,
       region,
       avg_msrp,
       cnt
  FROM (SELECT '2010' year,
               '12' month,
               'ALL' make,
               'ALL' model,
               REGION,
               sum(AVG_MSRP*COUNT)/sum(COUNT) avg_msrp,
               sum(cnt) cnt
          FROM HISTORICAL_CAR_STATS
         WHERE YEAR = '2010' 
           AND MONTH = '12'
           AND MAKE != 'ALL' 
         GROUP BY REGION)


  1. C#:Objekt kan ikke castes fra DbNull til andre typer

  2. MySQL-serveren løber tør for hukommelse eller starter ikke

  3. Mysql streng split

  4. Hvorfor kan jeg ikke bruge bindevariabler i DDL/SCL-sætninger i dynamisk SQL?