Kiểu dữ liệu INTERVAL trong Oracle được sử dụng để biểu diễn khoảng thời gian. Kiểu dữ liệu này rất hữu ích khi bạn cần lưu trữ và xử lý các khoảng thời gian như “2 ngày” hoặc “3 tháng”. Oracle cung cấp hai loại INTERVAL: INTERVAL data types – Sử dụng kiểu dữ liệu INTERVAL trong Oracle Database
- INTERVAL YEAR TO MONTH: Biểu diễn khoảng thời gian tính bằng năm và tháng.
- INTERVAL DAY TO SECOND: Biểu diễn khoảng thời gian tính bằng ngày, giờ, phút, giây.
Dưới đây là cách sử dụng các kiểu dữ liệu INTERVAL trong Oracle:
1. INTERVAL YEAR TO MONTH
Kiểu dữ liệu INTERVAL YEAR TO MONTH biểu diễn khoảng thời gian theo năm và tháng. Bạn có thể sử dụng nó để thêm hoặc trừ khoảng thời gian từ một giá trị DATE hoặc TIMESTAMP.
-- Tạo bảng có cột INTERVAL YEAR TO MONTH CREATE TABLE employees ( employee_id NUMBER, name VARCHAR2(50), hire_date DATE, contract_duration INTERVAL YEAR TO MONTH ); -- Chèn dữ liệu vào bảng INSERT INTO employees (employee_id, name, hire_date, contract_duration) VALUES (1, 'Alice', DATE '2020-01-15', INTERVAL '2-6' YEAR TO MONTH); -- Truy vấn dữ liệu SELECT employee_id, name, hire_date, contract_duration FROM employees;
Kết quả sẽ là:
| employee_id | name | hire_date | contract_duration |
|---|---|---|---|
| 1 | Alice | 2020-01-15 | +02-06 |
Sử dụng INTERVAL YEAR TO MONTH:
-- Thêm khoảng thời gian vào ngày thuê SELECT hire_date, hire_date + contract_duration AS contract_end_date FROM employees WHERE employee_id = 1;
Kết quả sẽ là:
| hire_date | contract_end_date |
|---|---|
| 2020-01-15 | 2022-07-15 |
2. INTERVAL DAY TO SECOND
Kiểu dữ liệu INTERVAL DAY TO SECOND biểu diễn khoảng thời gian theo ngày, giờ, phút và giây. Điều này rất hữu ích khi bạn cần tính toán khoảng thời gian chi tiết hơn.
-- Tạo bảng có cột INTERVAL DAY TO SECOND CREATE TABLE tasks ( task_id NUMBER, task_name VARCHAR2(50), start_time TIMESTAMP, duration INTERVAL DAY TO SECOND ); -- Chèn dữ liệu vào bảng INSERT INTO tasks (task_id, task_name, start_time, duration) VALUES (1, 'Project A', TIMESTAMP '2024-06-25 10:00:00', INTERVAL '5 04:30:00' DAY TO SECOND); -- Truy vấn dữ liệu SELECT task_id, task_name, start_time, duration FROM tasks;
Kết quả sẽ là:
| task_id | task_name | start_time | duration |
|---|---|---|---|
| 1 | Project A | 2024-06-25 10:00:00.000 | +05 04:30:00.000 |
Sử dụng INTERVAL DAY TO SECOND:
-- Thêm khoảng thời gian vào thời gian bắt đầu SELECT start_time, start_time + duration AS end_time FROM tasks WHERE task_id = 1;
Kết quả sẽ là:
| start_time | end_time |
|---|---|
| 2024-06-25 10:00:00.000 | 2024-06-30 14:30:00.000 |
- Bạn có thể thêm hoặc trừ các khoảng thời gian này từ các giá trị DATE hoặc TIMESTAMP.
- Điều này cho phép bạn tính toán các ngày kết thúc hợp đồng, thời gian hoàn thành nhiệm vụ, và các phép tính liên quan đến khoảng thời gian khác.
Việc sử dụng kiểu dữ liệu INTERVAL giúp bạn quản lý và thao tác các khoảng thời gian một cách hiệu quả và chính xác trong các ứng dụng cơ sở dữ liệu Oracle.
- Ubuntu là gì?
- Using The MINUS operator – Sử dụng toán tử MINUS trong SQL
- Q66. Which are two of the steps taken by Database Configuration Assistant (DBCA) to clone a remote pluggable database (PDB) starting from Oracle 19c?
- Cách Sử Dụng Multisig Wallets Để Tăng Bảo Mật Khi Lưu Trữ Bitcoin
- Smart Contracts: Vai Trò Và Ứng Dụng Trên Blockchain

Gymax - Gym and Fitness Template Kit
Paul Goodman - Envato Template Kit
Knight Elementor Template Kit
Mashura Elementor Template Kit
Finess Elementor Template Kit
Ninja E-Sport - Gaming Elementor Template Kit
Skindive Elementor Template Kit
Shippo - Football & Sports Academy Elementor Template Kit
Gameplay Elementor Template Kit
Seporta - Gym & Fitness Trainer Elementor Template Kit
eCademy - Education LMS & Online Coaching Courses WordPress Theme
CrossGym Elementor Template Kit
Lincoln Education Material Design Wordpress Theme
Palester - Gym and Fitness Elementor Template Kit
Lunar - Template Kit for eSport & Gaming
Fitrainer - Gym & Fitness Elementor Template Kit
Gulali - Creative Portfolio Elementor Template Kit
Edumy - LMS Online Education Course WordPress Theme
Sportstar Elementor Template Kit
Gain Power Elementor Template Kit
Campress - Responsive Education WordPress Theme
Joga - Meditation and Yoga Elementor Template Kit
Asaya Elementor Template Kit
Gymsite - Gym Elementor Template Kit
Digity - Digital Agency Template Kit
Manual - Documentation, Knowledge Base & Education WordPress Theme
Kulo - Professional Resume Template Kit
iSchool - Education & Online Courses WordPress Theme
SiviGUE - Personal Portfolio Elementor Template Kit
Course Builder - Online Course WordPress Theme
Thomas Elementor Template Kit
Vlogger - Professional Video & Tutorials WordPress Theme
Paperino - Garage Elementor Template Kit
Edumodo - Education WordPress Theme
Yoganesia - Yoga Studio Elementor Template Kit
Namaste Yoga Studio Elementor Template Kit
Web mẫu - Dịch vụ lao động chân tay Handyman
EduMall - Professional LMS Education Center WordPress Theme
Agence - Creative Agency Template Kit
Web mẫu - Đại lý Kinh doanh xe hơi Car Dealership
KidsCenter - Kindergarten and Kid Care Education WordPress Theme
Eduma - Education WordPress Theme 5.6.0
Edubin - Education WordPress Theme
StudioPress Course Maker Pro Genesis WordPress Theme
DotLife | Coaching Online Courses WordPress
Gravity Forms HubSpot Addon
Gravity Forms Help Scout Addon
DigitalPrime - Template kit for digital agency
Calendarize it! for WordPress