Oracle Database Query Techniques and Object Management

1. String Concatenation Operator

SELECT 'Employee: ' || ename || ', Role: ' || job || ', Salary: ' || sal AS details FROM emp;

2. Convert Strings to Lowercase

SELECT LOWER(ename) AS lowercase_name FROM emp;

3. Value Replacmeent

SELECT DECODE(deptno, 10, 'Development', 20, 'Product', 30, 'Maintenance') AS department FROM emp;

4. Extract Current Year

SELECT EXTRACT(YEAR FROM SYSDATE) AS current_year FROM dual;

5. Calculate Employee Tenure

SELECT EXTRACT(YEAR FROM SYSDATE) - EXTRACT(YEAR FROM hiredate) AS years_of_service FROM emp;

6. Numeric Formatting

SELECT TO_CHAR(0.123, '$0.9999') AS formatted_value FROM dual;

7. Format Date as String

SELECT TO_CHAR(SYSDATE, 'YYYY"年"fmMM"月"fmDD"日" HH24:MI:SS') AS formatted_date FROM dual;

8. Calculate Total Compensation

SELECT ename, sal + COALESCE(comm, 0) AS total_compensation FROM emp;

9. Nullif Function

SELECT NULLIF(200, 200) AS result FROM dual;

10. Analytical Functions

Row Number Ranking

SELECT emp.*, ROW_NUMBER() OVER (ORDER BY sal DESC) AS rank_num FROM emp;

Rank Function

SELECT emp.*, RANK() OVER (ORDER BY sal DESC) AS rank_position FROM emp;

11. User Creation and Privileges

CREATE USER app_user IDENTIFIED BY password123;
GRANT CONNECT, CREATE SYNONYM TO app_user;
GRANT SELECT, DELETE, UPDATE ON scott.emp TO app_user;

12. Private Synonym

CREATE SYNONYM emp_data FOR scott.emp;
SELECT * FROM emp_data;

13. Public Synonym

CREATE PUBLIC SYNONYM public_emp FOR scott.emp;
SELECT * FROM public_emp;

14. Sequence and Table Usage

CREATE SEQUENCE student_seq START WITH 1 INCREMENT BY 1;

CREATE TABLE students (
    student_id INT PRIMARY KEY,
    student_name VARCHAR2(50)
);

INSERT INTO students VALUES (student_seq.NEXTVAL, 'Zhang San');
SELECT student_seq.CURRVAL FROM dual;
SELECT * FROM students;

15. Grant View Creation Privilege

GRANT CREATE VIEW TO scott;

16. Create View with Join

CREATE VIEW department_employees AS
SELECT d.deptno, d.dname, d.loc, e.empno, e.ename, e.job, e.mgr, e.hiredate
FROM emp e
JOIN dept d ON e.deptno = d.deptno;

Tags: Oracle sql database Query administration

Posted on Mon, 18 May 2026 11:54:38 +0000 by vponz