قالببندی دادهها در MySQL
در MySQL، قالببندی دادهها به معنای تغییر ظاهر یا فرمت دادهها هنگام بازیابی آنها از پایگاه داده است. این کار معمولاً با استفاده از توابع و دستورات مختلف SQL انجام میشود. قالببندی دادهها میتواند شامل تغییر در قالب تاریخ و زمان، اعداد و رشتهها باشد.
قالببندی تاریخ و زمان
MySQL توابع مختلفی برای قالببندی تاریخ و زمان ارائه میدهد. برخی از این توابع عبارتند از:
- DATE_FORMAT(): این تابع برای قالببندی تاریخها به فرمت دلخواه استفاده میشود.
مثال:
SELECT DATE_FORMAT(NOW(), '%Y-%m-%d') AS formatted_date;
- TIME_FORMAT(): این تابع برای قالببندی زمانها به فرمت دلخواه استفاده میشود.
مثال:
SELECT TIME_FORMAT(NOW(), '%H:%i:%s') AS formatted_time;
- TIMESTAMPDIFF(): این تابع برای محاسبه تفاوت بین دو تاریخ یا زمان استفاده میشود.
مثال:
SELECT TIMESTAMPDIFF(DAY, '2024-01-01', '2024-12-31') AS days_difference;
قالببندی اعداد
برای قالببندی اعداد در MySQL، از توابع مختلفی میتوان استفاده کرد:
- FORMAT(): این تابع برای قالببندی اعداد به فرمت عددی خاص (مانند اضافه کردن کاما به عنوان جداکننده هزارگان) استفاده میشود.
مثال:
SELECT FORMAT(1234567.89, 2) AS formatted_number;
- ROUND(): این تابع برای گرد کردن اعداد به تعداد مشخصی از اعشار استفاده میشود.
مثال:
SELECT ROUND(123.4567, 2) AS rounded_number;
- CEIL(): این تابع برای گرد کردن عدد به بالاترین عدد صحیح استفاده میشود.
مثال:
SELECT CEIL(123.4567) AS ceiled_number;
- FLOOR(): این تابع برای گرد کردن عدد به پایینترین عدد صحیح استفاده میشود.
مثال:
SELECT FLOOR(123.4567) AS floored_number;
قالببندی رشتهها
برای قالببندی رشتهها در MySQL، از توابع مختلفی استفاده میشود:
- CONCAT(): این تابع برای اتصال رشتهها به یکدیگر استفاده میشود.
مثال:
SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM users;
- UPPER(): این تابع برای تبدیل رشته به حروف بزرگ استفاده میشود.
مثال:
SELECT UPPER(name) AS upper_name FROM users;
- LOWER(): این تابع برای تبدیل رشته به حروف کوچک استفاده میشود.
مثال:
SELECT LOWER(name) AS lower_name FROM users;
- SUBSTRING(): این تابع برای استخراج یک زیررشته از یک رشته استفاده میشود.
مثال:
SELECT SUBSTRING(name, 1, 3) AS sub_name FROM users;
مثال جامع
فرض کنید جدولی به نام employees
با ستونهای id
, first_name
, last_name
, salary
, hire_date
, و birth_date
دارید. برای قالببندی دادهها به صورتهای مختلف میتوان از دستورات زیر استفاده کرد:
ساختار جدول
CREATE TABLE employees (
id INT AUTO_INCREMENT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
salary DECIMAL(10, 2),
hire_date DATE,
birth_date DATE
);
دادههای نمونه
INSERT INTO employees (first_name, last_name, salary, hire_date, birth_date) VALUES
('Ali', 'Rezaei', 5000.00, '2020-01-15', '1985-06-20'),
('Sara', 'Ahmadi', 6000.50, '2019-03-10', '1990-09-25'),
('Reza', 'Mohammadi', 5500.75, '2021-07-18', '1988-12-05');
قالببندی دادهها
SELECT
CONCAT(first_name, ' ', last_name) AS full_name,
FORMAT(salary, 2) AS formatted_salary,
DATE_FORMAT(hire_date, '%M %d, %Y') AS formatted_hire_date,
YEAR(birth_date) AS birth_year
FROM
employees;
نتیجه
full_name | formatted_salary | formatted_hire_date | birth_year |
---|---|---|---|
Ali Rezaei | 5,000.00 | January 15, 2020 | 1985 |
Sara Ahmadi | 6,000.50 | March 10, 2019 | 1990 |
Reza Mohammadi | 5,500.75 | July 18, 2021 | 1988 |
نتیجهگیری
قالببندی دادهها در MySQL امکان ارائه دادهها به شکلی زیبا و خوانا را فراهم میکند. با استفاده از توابع قالببندی مختلف میتوان دادهها را به فرمتی که مناسب نیازهای خاص شما است تغییر داد. این امر میتواند در گزارشدهی و نمایش دادهها به کاربران نهایی بسیار مفید باشد.
منابع
کلیدواژهها
- MySQL
- قالببندی دادهها
- توابع تاریخ و زمان
- توابع عددی
- توابع رشتهای
- SQL