Polecenia SQL


Oracle wbudowane funkcje

Istnieją dwa rodzaje funkcji w Oracle.
1) Pojedyncze Funkcje rzędu: Jednorzędowe lub Funkcje skalarne zwracają wartość dla każdego wiersza, który jest przetwarzany w zapytaniu.
Funkcje 2) Grupa: Są grupą funkcje rzędy danych opartych na wartościach zwracanych przez kwerendę. Jest to omówione w funkcji Grupy SQL. Funkcje grupowe są wykorzystywane do obliczania wartości zagregowanych, takich jak całkowite lub średnie, które zwracają tylko jedno łącznie lub jeden średniej wartości po przetworzeniu grupę wierszy.

Istnieją cztery rodzaje pojedynczych funkcji rzędu. Oni są:
Funkcje 1) numeryczne: Są to funkcje, które akceptują wartości numerycznych i zwracane wartości numerycznych.
2) znak lub tekstowe Funkcje: Są to funkcje, które akceptują wejście znak i może wrócić obie wartości alfanumerycznych.
3) Data Funkcje: Są to funkcje, które mają wartości, które są od typu danych decyduje data wejścia i zwracania wartości nieaktualne typu danych, z wyjątkiem funkcji MONTHS_BETWEEN, która zwraca liczbę.
4) Funkcje konwersji: Są to funkcje, które pomagają nam w konwersji wartości w jednej postaci w inną postać. Dla przykładu: wartość null do rzeczywistej wartości lub wartości z jednego typu danych na inny typ danych jak NVL, TO_CHAR, TO_NUMBER, TO_DATE etc.

Można łączyć więcej niż jedną funkcję razem w wyrażeniu. Jest to znane jako zagnieżdżenia funkcji.

Czym jest DUAL tabeli w Oracle?
Jest to pojedynczy wiersz i kolumnę pojedynczej tabeli obojętne dostarczanych przez Oracle. Ta funkcja służy do wykonywania operacji matematycznych bez użycia tabeli.

Select * from DUAL

Wyjście:

MANEKIN
-------
X

Select 777 * 888 from Dual

Wyjście:

777 * 888
---------
689976

Funkcje 1) numeryczne:

Funkcje numeryczne służą do wykonywania operacji na liczbach. przyjmują wartości numeryczne jak wejścia i powrotu wartości numeryczne jako wyjście. Kilka funkcji numerycznych są:

Function Name Return Value
ABS (x) Absolute value of the number 'x'
CEIL (x) Integer value that is Greater than or equal to the number 'x'
FLOOR (x) Integer value that is Less than or equal to the number 'x'
TRUNC (x, y) Truncates value of number 'x' up to 'y' decimal places
ROUND (x, y) Rounded off value of the number 'x' up to the number 'y' decimal places

Poniższe przykłady wyjaśnia wykorzystanie powyższych funkcji liczbowych

Function Name Examples Return Value
ABS (x) ABS (1)
ABS (-1)
1
-1
CEIL (x) CEIL (2.83)
CEIL (2.49)
CEIL (-1.6)
3
3
-1
FLOOR (x) FLOOR (2.83)
FLOOR (2.49)
FLOOR (-1.6)
2
2
-2
TRUNC (x, y) ROUND (125.456, 1)
ROUND (125.456, 0)
ROUND (124.456, -1)
125.4
125
120
ROUND (x, y) TRUNC (140.234, 2)
TRUNC (-54, 1)
TRUNC (5.7)
TRUNC (142, -1)
140.23
54
5
140

Funkcje te mogą być stosowane kolumny w bazie danych.

Dla przykładu: Rozważmy tabelę produkt używany w SQL łączy. Możemy użyć rundzie, aby zaokrąglić unit_price do najbliższej liczby całkowitej, jeżeli produkt ma ceny we frakcji.

SELECT ROUND (unit_price) FROM product;

2) znak lub tekstowe Funkcje:

Znak lub tekst funkcje są używane do manipulowania ciągi tekstowe. Oni akceptują sznurki lub znaki na wejściu i może wrócić obie wartości alfanumerycznych jako wyjście.

Niewielu z funkcji znaków lub tekstu są podane poniżej:

Function Name Return Value
LOWER (string_value) All the letters in 'string_value' is converted to lowercase.
UPPER (string_value) All the letters in 'string_value' is converted to uppercase.
INITCAP (string_value) All the letters in 'string_value' is converted to mixed case.
LTRIM (string_value, trim_text) All occurrences of 'trim_text' is removed from the left of 'string_value'.
RTRIM (string_value, trim_text) All occurrences of 'trim_text' is removed from the right of 'string_value' .
TRIM (trim_text FROM string_value) All occurrences of 'trim_text' from the left and right of 'string_value' , 'trim_text' can also be only one character long .
SUBSTR (string_value, m, n) Returns 'n' number of characters from 'string_value' starting from the 'm' position.
LENGTH (string_value) Number of characters in 'string_value' in returned.
LPAD (string_value, n, pad_value) Returns 'string_value' left-padded with 'pad_value' . The length of the whole string will be of 'n' characters.
RPAD (string_value, n, pad_value) Returns 'string_value' right-padded with 'pad_value' . The length of the whole string will be of 'n' characters.

Dla przykładu, możemy użyć powyższego upper () funkcje tekstowe z wartością kolumny w następujący sposób.

SELECT UPPER (product_name) FROM product;

Poniższe przykłady wyjaśnia wykorzystanie powyższych funkcji znaków lub tekstu

Function Name Examples Return Value
LOWER(string_value) LOWER('Good Morning') good morning
UPPER(string_value) UPPER('Good Morning') GOOD MORNING
INITCAP(string_value) INITCAP('GOOD MORNING') Good Morning
LTRIM(string_value, trim_text) LTRIM ('Good Morning', 'Good) Morning
RTRIM (string_value, trim_text) RTRIM ('Good Morning', ' Morning') Good
TRIM (trim_text FROM string_value) TRIM ('o' FROM 'Good Morning') Gd Mrning
SUBSTR (string_value, m, n) SUBSTR ('Good Morning', 6, 7) Morning
LENGTH (string_value) LENGTH ('Good Morning') 12
LPAD (string_value, n, pad_value) LPAD ('Good', 6, '*') **Good
RPAD (string_value, n, pad_value) RPAD ('Good', 6, '*') Good**

3) Data Funkcje:

Są to funkcje, które mają wartości, które są od typu danych decyduje data wejścia i zwracane wartości typów danych DATA, z wyjątkiem funkcji MONTHS_BETWEEN, która zwraca liczbę jako wyjście.

Kilka funkcji daty podane są poniżej.

Function Name Return Value
ADD_MONTHS (date, n) Returns a date value after adding 'n' months to the date 'x'.
MONTHS_BETWEEN (x1, x2) Returns the number of months between dates x1 and x2.
ROUND (x, date_format) Returns the date 'x' rounded off to the nearest century, year, month, date, hour, minute, or second as specified by the 'date_format'.
TRUNC (x, date_format) Returns the date 'x' lesser than or equal to the nearest century, year, month, date, hour, minute, or second as specified by the 'date_format'.
NEXT_DAY (x, week_day) Returns the next date of the 'week_day' on or after the date 'x' occurs.
LAST_DAY (x) It is used to determine the number of days remaining in a month from the date 'x' specified.
SYSDATE Returns the systems current date and time.
NEW_TIME (x, zone1, zone2) Returns the date and time in zone2 if date 'x' represents the time in zone1.

Poniższa tabela przedstawia przykłady powyższych funkcji

Function Name Examples Return Value
ADD_MONTHS ( ) ADD_MONTHS ('16-Sep-81', 3) 16-Dec-81
MONTHS_BETWEEN( ) MONTHS_BETWEEN ('16-Sep-81', '16-Dec-81') 3
NEXT_DAY( ) NEXT_DAY ('01-Jun-08', 'Wednesday') 04-JUN-08
LAST_DAY( ) LAST_DAY ('01-Jun-08') 30-Jun-08
NEW_TIME( ) NEW_TIME ('01-Jun-08', 'IST', 'EST') 31-May-08

4) Funkcje konwersji:

Są to funkcje, które pomagają nam w konwersji wartości w jednej postaci w inną postać. Ex: wartość null do rzeczywistej wartości lub wartość z jednego typu danych na inny typ danych jak NVL, TO_CHAR, TO_NUMBER, TO_DATE.

Niewielu z funkcji konwersji dostępnych w Oracle są:

Function Name Return Value
TO_CHAR (x [,y]) Converts Numeric and Date values to a character string value. It cannot be used for calculations since it is a string value.
TO_DATE (x [, date_format]) Converts a valid Numeric and Character values to a Date value. Date is formatted to the format specified by 'date_format'.
NVL (x, y) If 'x' is NULL, replace it with 'y'. 'x' and 'y' must be of the same datatype.
DECODE (a, b, c, d, e, default_value) Checks the value of 'a', if a = b, then returns 'c'. If a = d, then returns 'e'. Else, returns default_value.

Poniższa tabela przedstawia przykłady powyższych funkcji

Function Name Examples Return Value
TO_CHAR () TO_CHAR (3000, '$9999')
TO_CHAR (SYSDATE, 'Day, Month YYYY')
$3000
Monday, June 2008
TO_DATE () TO_DATE ('01-Jun-08') 01-Jun-08
NVL () NVL (null, 1) 1

Dodaj stronę do ulubionych