- [DEVEXPRESS] Hướng dẫn bật tính năng Scroll Pixcel in Touch trên GridView
- [DEVEXPRESS] Hướng dẫn sử dụng TileBar viết ứng dụng duyệt hình ảnh Winform
- [DEVEXPRESS] Tô màu border TextEdit trên Winform
- [C#] Lấy dữ liệu từ Console Write hiển thị lên textbox Winform
- [C#] Hiển thị Progress bar trên Window Console
- [C#] Di chuyển control Runtime và lưu layout trên winform
- [SQLSERVER] Sử dụng hàm NULL IF
- [C#] Chia sẽ source code mã đi tuần bằng giao diện Winform
- [C#] Flash Window in Taskbar Winform
- Download và Giải nén tập tin File sử dụng Powershell
- [C#] Hướng dẫn cách lấy thông tin đăng nhập tài khoản và mật khẩu web browser trên windows
- [VB.NET] CRUD Thêm xóa sửa tìm kiếm Realtime FireBase
- [C#] Hiển thị thông báo Toast Message trong lập trình Winform
- [C#] Cấu hình định dạng ngày tháng, thời gian trên Windows cho ứng dụng Winform
- [C#] Rút gọn đường dẫn link url với TinyURL API
- [C#] Hướng dẫn cách bo tròn winform with Radius
- [C#] Chia sẽ class BackGroundOverlay Show Modal cho Winform
- [C#] Hướng dẫn Flip Image Winform
- [C#] Invoke là gì? cách sử dụng phương thức Invoke()
- [C#] Hướng dẫn chia sẽ file, folder từ ứng dụng sang Zalo Chat
[DATABASE] Hướng dẫn in danh sách tất cả các ngày theo khoảng từ ngày đến ngày
Xin chào các bạn, bài viết hôm nay mình sẽ chia sẽ đến các bạn hàm trong Sqlserver để liệt kê danh sách các ngày trong khoảng thời gian chúng ta nhập vào.
[DATABASE] Hướng dẫn in danh sách tất cả các ngày theo khoảng từ ngày đến ngày
Ví dụ: bây giờ bạn muốn hiển thị danh sách tất cả các ngày từ 01/01/2019
đến 31/12/2019
Hàm dưới đây sẽ hiển thị ra đầy đủ thông tin cho các bạn, thành một một bảng table để các bạn có thể dễ dàng xử lý.
Khi chúng ta nhập vào từ ngày 01/01/2019
đến 31/12/2019
chúng ta sẽ được danh sách trả về như hình bên dưới:
Danh sách trả về bao gồm các bạn đầy đủ thông tin bao gồm: ngày, năm, tháng, ngày trong tháng, id thứ, thứ , tháng_text, ngày trong năm, quý, ngày đầu tiên của năm, ngày đầu tiên của tháng.
Code Print List Date Of Year SQLSERVER:
DECLARE @start_dt AS DATE='20190101';
DECLARE @end_dt AS DATE='20191231';
DECLARE @dates AS TABLE(date_id DATE PRIMARY KEY,
date_year SMALLINT,
date_month TINYINT,
date_day TINYINT,
weekday_id TINYINT,
weekday_nm VARCHAR(10),
month_nm VARCHAR(10),
day_of_year SMALLINT,
quarter_id TINYINT,
first_day_of_month DATE,
last_day_of_month DATE,
start_dts DATETIME,
end_dts DATETIME);
WHILE @start_dt<=@end_dt BEGIN
INSERT INTO @dates(date_id, date_year, date_month, date_day, weekday_id, weekday_nm, month_nm, day_of_year, quarter_id, first_day_of_month, last_day_of_month, start_dts, end_dts)
VALUES(@start_dt, YEAR(@start_dt), MONTH(@start_dt), DAY(@start_dt), DATEPART(WEEKDAY, @start_dt), DATENAME(WEEKDAY, @start_dt), DATENAME(MONTH, @start_dt), DATEPART(DAYOFYEAR, @start_dt), DATEPART(QUARTER, @start_dt), DATEADD(DAY, -(DAY(@start_dt)-1), @start_dt), DATEADD(DAY, -(DAY(DATEADD(MONTH, 1, @start_dt))), DATEADD(MONTH, 1, @start_dt)), CAST(@start_dt AS DATETIME), DATEADD(SECOND, -1, CAST(DATEADD(DAY, 1, @start_dt) AS DATETIME)));
SET @start_dt=DATEADD(DAY, 1, @start_dt);
END;
SELECT date_id AS [Ngày], date_year AS [Năm], date_month AS [Tháng], date_day AS [Ngày trong tháng], weekday_id AS [ID thứ], weekday_nm AS [Thứ], month_nm AS [Tháng], day_of_year AS [Ngày trong năm], quarter_id AS [Quý], first_day_of_month AS [Ngày đầu tiên của tháng], last_day_of_month AS [Ngày cuối cùng của tháng], start_dts, end_dts
FROM @dates;
Thanks for watching!