Tôi muốn tính số tuần của tháng, tôi muốn tính số tuần cho dù tuần lẻ hoặc thậm chí của nó như thế nào tôi có thể nhận được điều này trong TSQL? Cảm ơn tất cả!TSQL Tính số tuần của tháng
Trả lời
này mang đến cho bạn tuần của @dt ngày trong tháng của mình. Có một cột thứ 2 có sử dụng một câu lệnh CASE trong ngôn luận, để hiển thị hoặc là «Lẻ» hay «Chẵn»,
declare @dt datetime
set @dt = GETDATE()
select
WhichWeekOfMonth = datepart(wk, @dt)
- datepart(wk,dateadd(m, DATEDIFF(M, 0, @dt), 0)) + 1,
case when (datepart(wk, @dt)
- datepart(wk,dateadd(m, DATEDIFF(M, 0, @dt), 0)) + 1) % 2 = 1
then 'Odd' else 'Even' end
Đó là một Richard tuyệt vời. Bạn cũng có thể giúp với cách chúng tôi có thể làm ngược lại - Được cung cấp một tháng và số tuần, chúng tôi có thể nhận được ngày đầu tiên và ngày cuối cùng trong số tuần đó không? – Jinith
Hãy thử điều này:
SELECT (DATEPART(d, '02/07/2011')/7)%2 AS WeekNo, --Replace your date column in place of '02/07/2011'
CASE (DATEPART(d, '02/07/2011')/7)%2
WHEN 1 THEN 'Odd'
ELSE 'Even'
END AS WeekType
Cung cấp cho câu trả lời sai (theo định nghĩa của tôi - xem tôi câu trả lời) - nó nói là trong tuần 1 – RichardTheKiwi
Truy vấn ở trên cho biết liệu ngày tháng trong tuần là tuần thậm chí là tuần lẻ của tháng ... – Chandu
Nó sẽ cung cấp cho bạn Số tuần Mỗi tháng
declare @dates datetime
select @dates='2011-03-22'
SELECT datepart(dd,@dates), ceiling (cast(datepart(dd,@dates)as numeric(38,8))/7)
Làm thế nào về một cái gì đó có thể đọc được, dễ dàng tùy chỉnh, và có thể dự đoán ...
DECLARE @dayOfMonth AS INT;
SET @dayOfMonth = DATEPART(DAY, '3/14/2013');
SELECT CASE
WHEN @dayOfMonth < 8 THEN 1
WHEN @dayOfMonth < 15 THEN 2
WHEN @dayOfMonth < 22 THEN 3
ELSE 4
END AS weekOfMonth;
tôi nghĩ rằng điều này làm cho cách tiếp cận rất rõ ràng:
DECLARE @DayOne DATETIME
DECLARE @ThisDay DATETIME
SET @ThisDay = GETDATE()
SET @DayOne = CAST(CAST(MONTH(@ThisDay) AS VARCHAR) + '/1/' + CAST(YEAR(@ThisDay) AS VARCHAR) AS DATETIME)
SELECT (DATEPART(wk, @ThisDay) - DATEPART(wk, @DayOne) + 1) AS [Week Of Month]
SQL Server 2012 có một chức năng CONCAT có thể được sử dụng để dễ dàng xây dựng các chuỗi DayOne:
DECLARE @DayOne DATETIME
DECLARE @ThisDay DATETIME
SET @ThisDay = GETDATE()
SET @DayOne = CAST(CONCAT(MONTH(@ThisDay), '/1/', YEAR(@ThisDay)) AS DATETIME)
SELECT (DATEPART(wk, @ThisDay) - DATEPART(wk, @DayOne) + 1) AS [Week Of Month]
- 1. python - Số tuần của tháng
- 2. Tính tuần của tháng trong .NET
- 3. NSDate nhận tuần trước, số tháng trước
- 4. Tính số ngày trong tháng
- 5. được tuần thứ n của tháng trong C#
- 6. nhận NSDate ngay hôm nay, hôm qua, tuần này, tuần trước, tháng này, tháng trước ... biến
- 7. Làm cách nào để lấy số tháng từ số năm và số tuần trong C#?
- 8. Số tuần của một năm trong dateformat
- 9. SimpleDateFormat Tính toán tuần
- 10. Cách tính NSDate đầu tiên của tuần hiện tại?
- 11. TSQL: nhóm các đơn đặt hàng của khách hàng theo tuần
- 12. ngày cuối cùng của tháng tính toán
- 13. Tính DayOfWeek cuối cùng của tháng
- 14. Nhóm của Tuần năm (Tuần số) trong LINQ to SQL
- 15. Số tuần kinh doanh python
- 16. Tính số đầy đủ tháng giữa hai ngày trong SQL
- 17. Chuyển đổi phút thành ngày, tuần, tháng và năm
- 18. Nhóm bởi phạm vi ngày trên tuần/tháng khoảng
- 19. Query hôm qua, tuần trước, tháng trước SQLite
- 20. PHP có ngày bắt đầu và ngày kết thúc của tuần theo số tuần
- 21. .NET có cho tôi số tuần sai trong ngày 29 tháng 12 năm 2008 không?
- 22. Cách tính số tuần cho ngày đã cho Android
- 23. tính số tuần trong một năm nhất định
- 24. Làm cách nào để tính số tuần giữa hai ngày?
- 25. Chức năng cho tuần trong tháng trong mysql
- 26. Cách lấy dấu thời gian của tháng hiện tại, ngày đầu tiên của tháng, số giờ
- 27. Kiểm tra xem ngày tháng có là cuối tuần PHP
- 28. Số tháng dựa trên số không
- 29. Trình ghi ngày tháng của jQuery ui, nhận Ngày trong tuần từ onSelect
- 30. Tôi làm cách nào để tính/tìm số tuần của một ngày nhất định?
danh sách một vài cuộc hẹn mẫu và dự kiến sản lượng – RichardTheKiwi