- 1
- 2
- 3
- 4
- 5
CREATE Procedure [dbo].[usp_InsertFleets]
@SSQL text
As
EXEC(@SSQL)
GO
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−859
CREATE Procedure [dbo].[usp_InsertFleets]
@SSQL text
As
EXEC(@SSQL)
GO
Минутка индусского кода
−857
-- Возвращает название месяца по русский
FUNCTION fmonstr (pmon IN VARCHAR2)
RETURN CHAR
IS
TYPE tmon IS TABLE OF VARCHAR2 (60)
INDEX BY BINARY_INTEGER;
amon tmon;
BEGIN
amon (1) := 'ЯНВАРЬ';
amon (2) := 'ФЕВРАЛЬ';
amon (3) := 'МАРТ';
amon (4) := 'АПРЕЛЬ';
amon (5) := 'МАЙ';
amon (6) := 'ИЮНЬ';
amon (7) := 'ИЮЛЬ';
amon (8) := 'АВГУСТ';
amon (9) := 'СЕНТЯБРЬ';
amon (10) := 'ОКТЯБРЬ';
amon (11) := 'НОЯБРЬ';
amon (12) := 'ДЕКАБРЬ';
RETURN amon (TO_NUMBER (pmon));
NULL;
END; -- End fMonStr
о наличие nls_date_language=russian и to_char() видимо не догадывались
−849
-- Очищаем поле [PlanItemCodeNorm] от всех записей содержащих не цифры и точку
UPDATE PIM SET [PlanItemCodeNorm] = ''
-- SELECT PIM.*
FROM [dbo].[PlanItem] PIM
WHERE [PlanItemCodeNorm] <> ''
AND REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(
REPLACE([PlanItemCodeNorm], '.', '' )
, '0', '' ), '1', '' ), '2', '' ), '3', '' ), '4', '' ), '5', '' ), '6', '' ), '7', '' ), '8', '' ), '9', ''), '*', '' )
<> ''
....
−856
create Function [dbo].[BuildString]( @a char(1),
@b char(1),
@c char(2),
@d char(2),
@e char(1),
@f char(1),
@g char(1),
@h char(2),
@i char(2),
@j char(1),
@k char(2),
@l char(1),
@m char(2),
@n char(1),
@o char(1),
@p char(1),
@q char(2),
@r char(2),
@s char(1),
@t char(1),
@u char(1),
@v char(1),
@w char(2),
@x char(2),
@y char(2),
@z char(1),
@a0 char(1),
@a1 char(1),
@a2 char(2),
@a3 char(2),
@a4 char(4))
returns char(47)
as
begin
declare @text char(47)
set @text = @a+@b+@c+@d+@e+@f+@g+
@h+@i+@j+@k+@l+@m+@n+
@o+@p+@q+@r+@s+@t+@u +
@v+@w+@x+@y+@z+
@a0+@a1+@a2+@a3+@a4
return @text
Автор наверное что-то хотел этим сказать. Я так и не понял :)
−120
t = SQLEXEC(cc,"INSERT INTO CARDS (N, NAME1, NAME2, NAME3, PDEPARTMENT, PPOST, DCREATE, DMODIFY, PFIRM, PGROUP);
VALUES( '"+ALLTRIM('65905')+"', '"+UPPER('Ивасик')+"', '"+UPPER('Иван')+"', '"+UPPER('Андреевич')+"',;
'"+ALLTRIM('565')+"', '"+ALLTRIM('2184800')+"', '"+ALLTRIM('24/06/2009')+"', '"+ALLTRIM('07/07/2009')+"',;
'"+ALLTRIM('5')+"','"+ALLTRIM('5')+"')")
Пример залива данных в базу на Visual FoxPro
−122
ALTER TABLE [dbo].[IssueGroup] WITH CHECK ADD CONSTRAINT [FK_IssueGroup_Group] FOREIGN KEY([ProjectId], [GroupId])
REFERENCES [dbo].[Group] ([GroupId],[ProjectId])
Часа 2 искал проблему в чужом коде - оказалось, что просто поля ProjectId и GroupId были записаны в разных порядках сначала FOREIGN KEY([ProjectId], [GroupId]), а потом REFERENCES [dbo].[Group] ([GroupId],[ProjectId]).
−117
SELECT * FROM CompanyData d WHERE d.Name = @companyName AND d.EntityID NOT IN (SELECT COUNT(*) FROM...)
Оригинал потерялся, но особый способ отсевания компаний запомнился. Хорошо, что COUNT(*) возвращал всегда ноль :)
−125
SELECT rr.hit, count(rr.hit) AS cnt FROM `r_hits` AS rr WHERE rr.hit IN (SELECT DISTINCT rh.hit FROM `r_hits`AS rh) GROUP BY rr.hit;
Вот что бывает, когда голова не работает в обед в понедельник.
А делов-то всего на select hit, COUNT(id) from r_hit group by hit было...
−194
SELECT * #__zakaz_montazh `id`='$id'
Нужна была информация по id
Пол часа искал в скриптах причину чего не работает...
Заработался видимо....
−191
SELECT * FROM l_table AS bl
LEFT JOIN t_table AS bt
ON (bl.ID = bt.ID)
WHERE DZ IN
(
SELECT LEFT(GROUP_CONCAT(DZ ORDER BY DZ DESC), 19)
FROM l_table GROUP BY UID
)
GROUP BY UID
ORDER BY DZ DESC
;