- 1
passport integer
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−165
passport integer
Из дипломной работы. Человек хоть раз открывал свой паспорт?
−168
decode(coalesce(d.modif19,'0'),'0','0',d.modif19)
−165
http://pastebin.com/YSWwKmGb
Кроме как линком не влезает. Но оно того стоит...
−169
SELECT Status_ID FROM User,UserStatus,Status WHERE User_ID=UserStatus_UserID AND UserStatus_StatusID=Status_ID GROUP BY Status_ID
−167
insert into #rez
select ('<html>')
Union all
select ('<head>')
Union all
select ('<meta http-equiv="content-type" content="text/html; charset=Windows-1251">')
Union all
select ('<title> Report </title>')
Union all
select ('<style type="text/css">')
Union all
select ('.{font-family:Arial;font-size:7pt;}')
Union all
select ('#top{border-top-style:solid;border-width:1;}')
Union all
select ('.titl{font-size:15px;}')
Union all
select ('.title{background-color:rgb(240,240,240)}')
Union all
select ('.data{background-color:rgb(248,248,248)}')
Union all
select ('.nam{background-color:rgb(245,245,245)}')
Union all
select ('</style>')
union all
select ('</head>')
union all
select ('<body>')
UNION ALL
select '<P align=left><SPAN style="FONT-SIZE: 12pt">' + @var1 + '<br><br>'
union all
-- ... и еще килобайт 50 подобной фигни. местами с генерацией табличек, с помощью if/case подсвеченных ячеек.
Спорите FastCGI vs WSGI? Говорите "Логика отдельно, шаблончики отдельно", ORM? Ну-ну. добро пожаловать в Махровый ентепрайз.
−114
select
row_number() over (order by count(*) desc) r,
case when t719.f7171 is null and t719.f7201 is null then 'За поданням
голови ОВК, капітана судна, керівн. полярної станції України'
when t719.f7171 is not null then t717.name1
when t719.f7201 is not null then t720.f7202||'
'||t720.f7203||' '||t720.f7204
end t021f02,
count(*) count1
from t719,
t066,
t714,
v1_t717 t717,
t720
where t719.t001f01=PT001F01 and
t719.t001f01=t066.t001f01 and
t719.f7331=t066.f7331 and
t719.f7141=t066.f7141 and
t719.f7191=t066.f7191 and
t066.T066F02 is not null and
t066.T066F03 is null and
t719.t001f01=t714.t001f01 and
t719.f7331=t714.f7331 and
t719.f7141=t714.f7141 and
t714.f71480 is null and
t719.f7171=t717.f7171(+) and
t719.t001f01=t717.t001f01(+) and
t719.f7201=t720.f7201(+) and
t719.t001f01=t720.t001f01(+)
group by case when t719.f7171 is null and t719.f7201 is null then 'За
поданням голови ОВК, капітана судна, керівн. полярної станції України'
when t719.f7171 is not null then t717.name1
when t719.f7201 is not null then t720.f7202||'
'||t720.f7203||' '||t720.f7204
end
order by count(*) desc, 1;
Оттуда же.
Ну и как такое можно сапортить?
−118
RAISERROR ('Transaction (Process ID 53) was deadlocked on lock resources with another process
and has been chosen as the deadlock victim. Rerun thetransaction', 16, 1 );
RETURN;
гыгыгы
−123
ALTER TRIGGER [dbo].[ObjectTrade]
ON [dbo].[packets]
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
DECLARE
@id_key int,
@id_th int,
@date_end datetime,
@date_beg datetime
SET @id_key = (SELECT id_key FROM inserted)
SET @id_th = (SELECT id_th FROM inserted WHERE id_key = @id_key)
SET @date_end = (SELECT date_end FROM inserted WHERE id_key = @id_key)
SET @date_beg = (SELECT date_beg FROM inserted WHERE id_key = @id_key)
IF @id_th = 183
UPDATE packets
SET packets.date_end = CAST('12-05-2014' AS DATE)
WHERE id_key =@id_key
IF (CAST(@date_end AS DATE) BETWEEN '08-03-2014' and '10-03-2014') SET @date_end = '07-03-2014'
IF (CAST(@date_end AS DATE) BETWEEN '01-05-2014' and '04-05-2014') SET @date_end = '30-04-2014'
IF (CAST(@date_end AS DATE) BETWEEN '09-05-2014' and '11-05-2014') SET @date_end = '08-05-2014'
IF (CAST(@date_end AS DATE) BETWEEN '12-06-2014' and '15-06-2014') SET @date_end = '11-06-2014'
IF (CAST(@date_end AS DATE) BETWEEN '02-11-2014' and '04-11-2014') SET @date_end = '01-11-2014'
IF (CAST(@date_end AS DATE) BETWEEN '01-01-2015' and '08-01-2015') SET @date_end = '31-12-2014'
IF DATEPART(WEEKDAY, @date_end) = 7 SET @date_end = DATEADD(DAY, -1, @date_end)
UPDATE packets SET packets.date_end = @date_end WHERE id_key =@id_key
END
−123
select ...
case
-- периоды пересекаются только в одной точке (2)
when (vw.hEndDate=vw.rStartDate)
then vw.hEndDate
when (vw.rEndDate=vw.hStartDate)
then vw.rEndDate
-- периоды пересекаются в определенной области (2)
when (vw.hStartDate > vw.rstartdate and IsNull(vw.hEndDate,'01-01-2099')<IsNull(vw.rEndDate,'01-01-2099')) then vw.hStartDate
when ((vw.rStartDate between vw.hStartDate and vw.hEndDate) and (vw.hEndDate between vw.rStartDate and vw.rEndDate))
then vw.rStartDate
when ((vw.hStartDate between vw.rStartDate and vw.rEndDate) and (vw.rEndDate between vw.hStartDate and vw.hEndDate))
then vw.hStartDate
-- периоды полностью совпадают (1)
when (vw.hStartDate=vw.rStartDate and vw.hEndDate=vw.rEndDate)
then vw.hStartDate
-- периоды совпадают в одной точке и перекрываются (4)
when (vw.hStartDate=vw.rStartDate and vw.rEndDate<vw.hEndDate)
then vw.hStartDate
when (vw.hStartDate=vw.rStartDate and vw.hEndDate<vw.rEndDate)
then vw.hStartDate
when (vw.hEndDate=vw.rEndDate and vw.rStartDate>vw.hStartDate)
then vw.rStartDate
when (vw.hEndDate=vw.rEndDate and vw.rStartDate<vw.hStartDate)
then vw.hStartDate
end as MainStartDate
,case
-- периоды пересекаются только в одной точке (2)
when (vw.hEndDate=vw.rStartDate)
then vw.hEndDate
when (vw.rEndDate=vw.hStartDate)
then vw.rEndDate
-- периоды пересекаются в определенной области (2)
when (vw.hStartDate > vw.rstartdate and IsNull(vw.hEndDate,'01-01-2099')<IsNull(vw.rEndDate,'01-01-2099')) then vw.hEndDate
when ((vw.rStartDate between vw.hStartDate and vw.hEndDate) and (vw.hEndDate between vw.rStartDate and vw.rEndDate))
then vw.hEndDate
when ((vw.hStartDate between vw.rStartDate and vw.rEndDate) and (vw.rEndDate between vw.hStartDate and vw.hEndDate))
then vw.rEndDate
-- периоды полностью совпадают (1)
when (vw.hStartDate=vw.rStartDate and vw.hEndDate=vw.rEndDate)
then vw.hEndDate
-- периоды совпадают в одной точке и перекрываются (4)
when (vw.hStartDate=vw.rStartDate and vw.rEndDate<vw.hEndDate)
then vw.rEndDate
when (vw.hStartDate=vw.rStartDate and vw.hEndDate<vw.rEndDate)
then vw.hEndDate
when (vw.hEndDate=vw.rEndDate and vw.rStartDate>vw.hStartDate)
then vw.hEndDate
when (vw.hEndDate=vw.rEndDate and vw.rStartDate<vw.hStartDate)
then vw.hEndDate
end as MainEndDate
from (select ...
case when (IsNull(h.[EndDate],'01-01-2099')=r.[StartDate]) then '1 периоды пересекаются только в одной точке (2) h.[EndDate]=r.[StartDate]'
when(IsNull(r.[EndDate],'01-01-2099')=h.[StartDate]) then '2 периоды пересекаются только в одной точке (2) r.[EndDate]=h.[StartDate]'
-- периоды пересекаются в определенной области (2)
when (h.startdate > r.startdate and IsNull(h.[EndDate],'01-01-2099')<IsNull(r.[EndDate],'01-01-2099')) then 'Период иерархии полностью входит в период территории'
when((r.StartDate between h.StartDate and IsNull(h.[EndDate],'01-01-2099')) and (IsNull(h.[EndDate],'01-01-2099') between r.StartDate and IsNull(r.[EndDate],'01-01-2099'))) then 'периоды пересекаются в определенной области (2) 3 ((r.StartDate between h.StartDate and IsNull(h.[EndDate],01-01-2099)) and (IsNull(h.[EndDate],01-01-2099) between r.StartDate and r.EndDate))'
when((h.startdate between r.startdate and IsNull(r.[EndDate],'01-01-2099')) and (IsNull(r.[EndDate],'01-01-2099') between h.Startdate and IsNull(h.[EndDate],'01-01-2099'))) then 'периоды пересекаются в определенной области (2) 4 ((h.startdate between r.startdate and r.enddate) and (r.EndDate between h.Startdate and IsNull(h.[EndDate],01-01-2099)))'
-- периоды полностью совпадают (1)
when(h.startdate=r.startdate and IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099')) then 'периоды полностью совпадают (1) 5 (h.startdate=r.startdate and IsNull(h.[EndDate],01-01-2099)=r.enddate)'
-- периоды совпадают в одной точке и перекрываются (4)
when(h.startdate=r.startdate and IsNull(r.[EndDate],'01-01-2099')<IsNull(h.[EndDate],'01-01-2099')) then 'периоды совпадают в одной точке и перекрываются (4) 6 (h.startdate=r.startdate and r.enddate<IsNull(h.[EndDate],01-01-2099))'
when(h.startdate=r.startdate and IsNull(h.[EndDate],'01-01-2099')<IsNull(r.[EndDate],'01-01-2099')) then 'периоды совпадают в одной точке и перекрываются (4) 7 (h.startdate=r.startdate and IsNull(h.[EndDate],01-01-2099)<r.enddate)'
when(IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099') and r.startdate>h.startdate) then 'периоды совпадают в одной точке и перекрываются (4) 8 (IsNull(h.[EndDate],01-01-2099)=r.enddate and r.startdate>h.startdate)'
when(IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099') and r.startdate<h.startdate) then 'периоды совпадают в одной точке и перекрываются (4) 9 (IsNull(h.[EndDate],01-01-2099)=r.enddate and r.startdate<h.startdate)'
... where ...
(IsNull(h.[EndDate],'01-01-2099')=r.[StartDate])
or (IsNull(r.[EndDate],'01-01-2099')=h.[StartDate])
-- периоды пересекаются в определенной области (2)
or ((r.StartDate between h.StartDate and IsNull(h.[EndDate],'01-01-2099')) and (IsNull(h.[EndDate],'01-01-2099') between r.StartDate and IsNull(r.[EndDate],'01-01-2099')))
or ((h.startdate between r.startdate and IsNull(r.[EndDate],'01-01-2099')) and (IsNull(r.[EndDate],'01-01-2099') between h.Startdate and IsNull(h.[EndDate],'01-01-2099')))
or (h.startdate > r.startdate and IsNull(h.[EndDate],'01-01-2099')<IsNull(r.[EndDate],'01-01-2099'))
-- периоды полностью совпадают (1)
or (h.startdate=r.startdate and IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099'))
-- периоды совпадают в одной точке и перекрываются (4)
or (h.startdate=r.startdate and IsNull(r.[EndDate],'01-01-2099')<IsNull(h.[EndDate],'01-01-2099'))
or (h.startdate=r.startdate and IsNull(h.[EndDate],'01-01-2099')<IsNull(r.[EndDate],'01-01-2099'))
or (IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099') and r.startdate>h.startdate)
or (IsNull(h.[EndDate],'01-01-2099')=IsNull(r.[EndDate],'01-01-2099') and r.startdate<h.startdate)
я даже знать не хочу, что в этом запросе на 140 строк происходит, и молю богу, чтобы это не ломалось, пока автор этого в декрете.
форматирование убрал, а то в 6к символов не помещался
отформатировать можно тут http://poorsql.com/
−116
DATEADD(day,DATEPART(day, DATEADD(s,-1,DATEADD(mm, DATEDIFF(m,0,DATEADD(d,
(day(EndDate)-1)*-1,EndDate))+1,0)))-1,DATEADD(d,(day(EndDate)-1)*-1,EndDate))
Вот так в M$ SQL вычисляют последний день месяца.
http://govnokod.ru/15606#comment223642