Bruke enkelt rad funksjoner for å tilpasse utgangs
Oracle SQL leverer et rikholdig bibliotek av innebygde funksjoner som kan benyttes til ulike oppgaver. De essensielle egenskapene til en funksjon kan være tilfelle konvertering av strenger, in-streng eller delstreng operasjoner, matematiske beregninger på numeriske data, og dato operasjoner på dato type verdier. SQL-funksjoner eventuelt ta argumenter fra brukeren og mandatorily returnere en verdi
På en bredere kategori, er det to typer funksjoner: -.
enkelt rad funksjoner Z - Enkelt rad funksjoner er den som jobber på én rad og returnere en produksjon per rad. For eksempel lengde og case konverteringsfunksjoner er på én rad funksjoner
Flere Row funksjoner Z -. Flere rad funksjoner jobbe på gruppe rader og returnere ett resultat for hele settet med rader. De er også kjent som konsernfunksjoner.
enkelt rad funksjoner
enkelt rad funksjoner kan være tegnfunksjoner, numeriske funksjoner, dato funksjoner og konverteringsfunksjoner. Legg merke til at disse funksjonene er brukt for å manipulere dataelementer. Disse funksjonene krever ett eller flere argumenter og operere på hver rad, og dermed returnere en utgangsverdi for hver rad. Argumentet kan være en kolonne, bokstavelig eller et uttrykk. Enkelt rad funksjoner kan brukes i SELECT-setning, WHERE og ORDER BY-ledd. Enkelt rad funksjoner kan være -
Generelle funksjoner Z - Vanligvis inneholder NULL håndtering funksjoner. Funksjonene under kategorien er NVL, NVL2, NULLIF, COALESCE, CASE, dekode
Case konverteringsfunksjoner Z -. Godtar tegn input og returnerer en tegnverdi. Funksjoner under kategorien er øvre, nedre og INITCAP. ØVRE funksjonen konverterer en streng til store bokstaver. NEDRE funksjonen konverterer en streng til små bokstaver. INITCAP funksjonen konverterer bare de innledende alfabeter av en streng til store bokstaver. Character funksjoner Z - Godtar tegn input og returnerer tall eller tegn verdi. Funksjoner under kategorien er CONCAT, lengde, SUBSTR, INSTR, LPAD, Rpad, TRIM og BYTT. CONCAT funksjon Setter sammen to strengverdier. LENGDE-funksjonen returnerer Lengden på strengen. SUBSTR funksjonen returnerer en del av en streng fra et gitt startpunkt til et sluttpunkt. INSTR funksjon returnerer numerisk posisjon av et tegn eller en streng i en gitt streng. LPAD og Rpad funksjoner pad den gitte strengen opp til en bestemt lengde med en gitt karakter. TRIM funksjon trimmer strengen innspill fra starten eller slutten. BYTT funksjonen erstatter tegn fra strengen med en gitt karakter. Dato funksjoner Z - Dato aritmetiske operasjoner returdato eller numeriske verdier. Funksjoner under kategorien er MONTHS_BETWEEN, ADD_MONTHS, NEXT_DAY, LAST_DAY, ROUND og AVKORT. MONTHS_BETWEEN funksjonen returnerer antallet måneder mellom de to datoene. ADD_MONTHS fungere legge 'n' antall måneder til en inngang dato. NEXT_DAY funksjonen returnerer neste dag for angitt. LAST_DAY funksjonen returnerer siste dag i måneden for inngangs dato. rundt og AVKORT funksjonene brukes til å runde og avkorter datoverdien. Tall funksjoner Z - Godtar numerisk input og returnerer tallverdier. Funksjoner under kategorien er runde, AVKORT, og MOD. rundt og AVKORT funksjonene brukes til å runde og avkorte tallverdi. MOD brukes til å returnere resten av divisjon mellom to tall. Anmeldelser SELECT spørring nedenfor demonstrerer bruk av NVL funksjon. SELECT spørring nedenfor viser bruken av saken konvertering funksjoner. SELECT spørring nedenfor viser bruken av CONCAT funksjon for å slå sammen to strengverdier. The SELECT spørring nedenfor viser bruken av substr og instr funksjoner. SUBSTR funksjonen returnerer den delen av input strengen fra første posisjon til femte posisjon. INSTR funksjonen returnerer den numeriske plasseringen av karakter 'a' i det første navnet. SELECT spørring nedenfor demonstrerer bruken av LPAD og Rpad til ganske skrive ut den ansatte og jobbinformasjon. SELECT spørring nedenfor demonstrerer bruken av runde og AVKORT funksjoner SELECT spørring under viser en dato regnefunksjon der forskjell på ansatt hire dato og SYSDATE gjøres SELECT spørring nedenfor demonstrerer bruk av MONTHS_BETWEEN, ADD_MONTHS, NEXT_DAY . og LAST_DAY funksjoner
< li>
illustrasjoner
Generelle funksjoner
Velg FIRST_NAME, last_name, lønn, NVL (commission_pct, 0) FRA employeesWHERE rownum <5; FIRST_NAME LAST_NAME LØNN NVL (COMMISSION_PCT, 0) ------------------- - ------------------------- ---------- -------------- ------- Steven kong 24000 0Neena Kochhar 17000 0Lex De Haan 17000 0Alexander Hunold 9000 0
Case konverteringsfunksjoner
VELG ØVRE (FIRST_NAME), INITCAP (last_name), NEDRE (job_id) Fra employeesWHERE rownum <5; ØVRE (FIRST_NAME) INITCAP (LAST_NAME) NEDRE (JOB _-------------------- ------------------------- ---------- STEVEN kong ad_presNEENA Kochhar ad_vpLEX De Haan ad_vpALEXANDER Hunold it_prog
Character funksjoner
Velg CONCAT (FIRST_NAME, last_name) Fra employeesWHERE rownum < 5;CONCAT(FIRST_NAME,LAST_NAME)--------------------------------EllenAbelSundarAndeMozheAtkinsonDavidAustin
VELG SUBSTR (FIRST_NAME , 1,5), INSTR (FIRST_NAME, 'a') Fra employeesWHERE rownum <5; SUBST INSTR (FIRST_NAME, 'A') ----- ---------------- ----- Ellen 0Sunda 5Mozhe 0David 2
VELG Rpad (FIRST_NAME, 10, '_') || LPAD (job_id, 15, '_') Fra employeesWHERE rownum < 5;RPAD(FIRST_NAME,10,'_')||-------------------------Steven____________AD_PRESNeena_______________AD_VPLex_________________AD_VPAlexander_________IT_PROG
Number funksjoner
velge round (1372.472,1) FRA dual;. ROUND (1372.472,1) ----------- ------ 1372.5SELECT AVKORT (72183, -2) FRA dual; AVKORT (72183, -2) --------------- 72100
Dato aritmetiske operasjoner
SELECT ansatt_nr, (SYSDATE - hire_date) Employment_daysFROM employeesWHERE rownum <5;. ansatt_nr EMPLOYMENT_DAYS -------- --- --------------- 100 3698,61877 101 2871,61877 102 4583,61877 103 2767.61877
Dato funksjoner
SELECT ansatt_nr, MONTHS_BETWEEN (SYSDATE, hire_date) Employment_monthsFROM employeesWHERE rownum <5; ansatt_nr EMPLOYMENT_MONTHS ----------- --------------- - 100 121.504216 101 94.3751837 102 150.633248 103 90.9558289SELECT ADD_MONTHS (SYSDATE, 5), NEXT_DAY (SYSDATE), LAST_DAY (SYSDATE) FRA dual; ADD_MONTH NEXT_DAY (LAST_DAY (--------- ------ --- --------- 01-JAN-14 05-Aug-13 31-Aug-13