SysVN xin giới thiệu bài viết cách sử dụng các hàm lồng vào nhau (Nesting Functions) trong Oracle SQL. Trước khi tiếp tục bài viết này, mời các bạn theo xem lại các bài viết
- Cách sử dụng Single-Row Functions trong Oracle SQL
- Cách sử dụng Single-Row Functions kiểu date trong Oracle SQL
- Cách sử dụng Conversion Functions và những biểu thức điều kiện trong Oracle SQL
- Giới thiệu
Các Single-row functions có thể lồng vào nhau bất kỳ cấp độ lồng. Khi đó thứ tự tính toán, đánh giá từ trong ra ngoài
Cú pháp:
2. Các ví dụ
Ví dụ 1:
SELECT last_name,
UPPER(CONCAT(SUBSTR (LAST_NAME, 1, 8), ‘_US’))
FROM employees
WHERE department_id = 60;
Ví dụ trên thì quá trình đánh giá như sau:
- Result1 = SUBSTR (LAST_NAME, 1, 8)
- Result2 = CONCAT(Result1, ‘_US’)
- Result3 = UPPER(Result2)
Ví dụ 2:
SELECT TO_CHAR(NEXT_DAY(ADD_MONTHS(hire_date, 6), ‘FRIDAY’),’fmDay, Month ddth, YYYY’) “Next 6 Month Review”
FROM employees
ORDER BY hire_date;
- Result1 = ADD_MONTHS(hire_date, 6)
- Result2 = NEXT_DAY(Result1 , ‘FRIDAY’)
- Result3 = TO_CHAR(Result2, ‘fmDay, Month ddth, YYYY’)
Ví dụ 3:
SELECT TO_CHAR(ROUND((salary/7), 2),’99G999D99′,’NLS_NUMERIC_CHARACTERS = ”,.” ‘) “Formatted Salary”
FROM employees;