- 1
- 2
- 3
- 4
- 5
SELECT DISTINCT
b.Id,
concat('<button type=""button"" onclick=""DeleteContact(', cast(b.Id as char), ')"">Delete...</button>') as lnkDelete
FROM tblContact b
WHERE ....
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−121
SELECT DISTINCT
b.Id,
concat('<button type=""button"" onclick=""DeleteContact(', cast(b.Id as char), ')"">Delete...</button>') as lnkDelete
FROM tblContact b
WHERE ....
Вот так вот, оказывается, можно линк формировать....
−126
AND (type = 2 OR type = 5 AND (type <> 3 OR type <> 20))
Очередной перл предшественника :)
−110
CREATE INDEX "SCHEMANAME"."PLIN_DPINS_FK_I" ON "SCHEMANAME"."CLIENT_PLAN_INSTALMENTS" ("DPLNS_PLAN_ID", "DPOPT_OPTION_ID", "INSTALMENT_NUM");
CREATE UNIQUE INDEX "SCHEMANAME"."PLIN_PK" ON "SCHEMANAME"."CLIENT_PLAN_INSTALMENTS" ("CLI_CLIENT_ID", "DPLNS_PLAN_ID", "DPOPT_OPTION_ID", "CLIPLN_PLAN_DATE", "CLIPLN_PLAN_TYPE", "INSTALMENT_NUM");
CREATE UNIQUE INDEX "SCHEMANAME"."CLIPLN_PK" ON "SCHEMANAME"."CLIENT_PLAN" ("CLI_CLIENT_ID", "DPLNS_PLAN_ID", "DPOPT_OPTION_ID", "PLAN_DATE", "PLAN_TYPE");
Реляционные? Не, не слышал.
−108
select 7-(8-datepart(weekday,getDate())) % 7
Написал для конвертации дней недели начинающихся с SUNDAY=1, в привычные Пн-1, Вс-7
−111
UPDATE zayavlenie_tmp
SET error = 1,
errorcod = 4
FROM zayavlenie_tmp
WHERE zayavlenie_tmp.error IS NULL
AND (rtrim(fam) = ''
OR LEN(ltrim(rtrim(fam))) < 2
OR fam LIKE '%0%'
OR fam LIKE '%1%'
OR fam LIKE '%2%'
OR fam LIKE '%3%'
OR fam LIKE '%4%'
OR fam LIKE '%5%'
OR fam LIKE '%6%'
OR fam LIKE '%7%'
OR fam LIKE '%8%'
OR fam LIKE '%9%'
UPDATE zayavlenie_tmp
SET error = 1,
errorcod = 5
FROM zayavlenie_tmp
WHERE zayavlenie_tmp.error IS NULL
AND (rtrim(im) = ''
OR LEN(ltrim(rtrim(im))) < 2
OR im LIKE '%0%'
OR im LIKE '%1%'
OR im LIKE '%2%'
OR im LIKE '%3%'
OR im LIKE '%4%'
OR im LIKE '%5%'
OR im LIKE '%6%'
OR im LIKE '%7%'
OR im LIKE '%8%'
OR im LIKE '%9%'
При импорте поля проверяются на соответствие (около 30 разнобразных правил). Хранимику писал мой начальнег :) Выкладываю УЖЕ немного исправленный для удобопонимания вариант, в исходнике таблицы еще зачем-то джойнились сами на себя. Всего в хранимике 50 (!!!) таких запросов, и каждый не менее эпичный )) Хотел исправить это хозяйство одним более-менее цивильным запросом, но где-то на половине у меня руки опустились
−115
SELECT id, login, 0 AS shows, 0 AS clicks, 0 AS money FROM users WHERE is_adv=1 AND is_blocked=0 AND (shows <> 0 AND clicks <> 0 AND money <> 0)
−108
select replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(replace(t1.PART_NUMBER, '@i@', ' '),'@a@', '/'),'@@@', '\'),'@b@', ':'),'@c@', '*'),'@d@', '?'),'@e@', '"'),'@f@', '<'),'@g@', '>'),'@h@', '|'),'@j@', '&'),'@k@', ''''),'@l@', ',') as 'PART_NUMBER',.....
−118
DROP PROCEDURE IF EXISTS postgkh.ACCOUNT_ITM $$
CREATE PROCEDURE postgkh.ACCOUNT_ITM(IN PERIOD DATE, IN ACC_ID INT)
BEGIN
SELECT A.ACCOUNT_ID, A.ACCOUNT_NO
# Смачный кусок кода
(SELECT GROUP_CONCAT(document_no ORDER BY document_no SEPARATOR ', ') DOCUMENT_NO
FROM
(SELECT d.document_no document_no
FROM postgkh.docar dr INNER JOIN
postgkh.document d ON dr.document_id = d.document_id
WHERE dr.account_id = ACC_ID
AND d.document_fromdate <= LAST_DAY(PERIOD)
AND (d.DOCUMENT_CLOSEDATE >= PERIOD OR d.DOCUMENT_CLOSEDATE IS NULL)
) d
) DOCUMENT_NO
FROM postgkh.ACCOUNT
WHERE A.ACCOUNT_ID = ACC_ID
GROUP BY A.ACCOUNT_ID
LIMIT 1;
END $$
MySQL
−106
Вчера узнал, что 30 лет назад меня родила мама только для того, чтобы получить квартиру.
"Поясните" - Вы?
−141
CREATE MATERIALIZED VIEW LEASE_NODES_SUMMARY_SDS
...
AS
SELECT
...
FROM lease_nodes_sds;
DECLARE
v_count NUMBER:=0;
BEGIN
LOOP
SELECT COUNT(1) INTO v_count FROM lease_nodes_summary_sds;
EXIT WHEN v_count>0;
END LOOP;
END;
Торопиться некуда. Будем ждать пока появятся строки в lease_nodes_sds...