- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
select
name,
CAST(date AS DATE) date,
case
when date>=dmin
then dmax
else dmin
end
from
(
select name, date,
DATEFROMPARTS(y1,4, (y1/2+y1/100-y1/400-5)%7+2) dmin,
DATEFROMPARTS (y2,4,(y2/2+y2/100-y2/400-5)%7+2) dmax
from
(
select name, date,
y1+4*(sign(y1%400)*(sign(y1%100)-1)) y1,
y2-4*(sign(y2%400)*(sign(y2%100)-1)) y2
from (
select name, date,
year(date)/4*4 y1, year(date)/4*4 +4 y2
from Battles
)t
)t
)t
kegdan 09.03.2015 17:23 # +4
gost 09.03.2015 18:14 # −1
Лол.
tirinox 09.03.2015 18:17 # +2
kegdan 09.03.2015 18:18 # 0
wvxvw 09.03.2015 19:20 # +3
kegdan 09.03.2015 19:22 # +1
defecate-plusplus 10.03.2015 00:29 # 0
склонен считать, что в этом случае надо ждать следующих 4 года
ибо вторник 8 апреля уже нихуя не первый вторник апреля
kegdan 10.03.2015 00:56 # 0
кстати это вот с этого сайтика
http://www.sql-ex.ru/
defecate-plusplus 10.03.2015 01:51 # 0
CAST(date AS DATE) date
почисть transaction log
transaction log сам себя не почистит
bormand 10.03.2015 10:39 # 0