Inlägg från: Grekinna27 |Visa alla inlägg
  • Grekinna27

    hur räkna ut ålder i PL SQL

    Hej, jag skulle vilja fråga någon innan jag river av mig håret. Vi håller på med PL SQL i oracle och jag kan inte förstå hur vi ska räkna ut alla människor i tabellens ålder.
    Vidare ska vi använda LOOP och Cursors men det får jag väl räkna ut på egen hand. Jag skulle bara vilja nån som kunde förklara hur man räknar ut alla kunders ålder.

    Tabellen ser ut såhär :


    CREATE TABLE bilägare(


    pnr VARCHAR2(11) PRIMARY KEY,


    fnamn VARCHAR2(20),


    enamn VARCHAR2(20),


    bor_i VARCHAR2(20),


    jobbar_i VARCHAR2(20));


     


    CREATE TABLE fordon(


    regnr VARCHAR2(6) PRIMARY KEY,


    pnr REFERENCES bilägare(pnr),


    tillverkare VARCHAR2(20),


    modell VARCHAR2(20),


    årsmodell NUMBER(4),


    hk NUMBER(4),


    datum DATE);

    Det vi ska få fram är egentligen anonymt block som skriver ut förnamn ,efternamn och ålder I ÅR med en decimal för alla personer i tabellen bilägare. Använd valfri cursor, explicit eller implicit och valfri LOOP. För och efternamn ska vara med stor begynnelsebokstav.
    Svaret ska bli:


    Hans, Rosenboll, 55,6 år.


    Tomas, Kvist, 50,7 år.


    Roger, Nyberg, 39,1 år.


    Lena, Malm, 33,4 år.


    Ollas, Bullas, 35,6 år.


    Tåmmy, Dåmert, 45,5 år.


    Rollf, Ekengren, 43,6 år.


    Maria, Stjärnkvist, 23,5 år.


    Leyla, Errstraid, 32,2 år.


    Arne, Möller, 66,6 år.

    Så hur 17 får jag fram åldern sådär? Mvh en som snart ger upp 


     


     
  • Svar på tråden hur räkna ut ålder i PL SQL
  • Grekinna27
    sportpappa skrev 2012-08-13 15:56:36 följande:
    Jag gjord en sökning och fick bra träffar. Sökord: pl sql calculate age from date of birth

    Den här satsen bör räcka:
    ROUND((MONTHS_BETWEEN(sysdate,date_of_birth)/12),1 ) 

    Se till att mata in rätt date_of_birth så får du ut åldern. date_of_birth får du från pnr (personnummer). Tabellen fordon behöver du inte bry dig om för att få fram det du vill ha.
    Hej tack så mycket. Har också sökt ihjäl mig på google efter svar och såg något liknande men var orolig att det kanske inte stämde.  Men det ser bra ut, och kommatecknet finns med där också. Får se om jag lyckas lösa hela frågan nu med looparna och cursors... håller på att bli galen här xD 
    Tack ska du ha dock 
Svar på tråden hur räkna ut ålder i PL SQL