----------------------------------------------------------------------------------
@MSGID: 2:5055/182 6838e840
@PID: jNode ver. 1.5
@TID: jNode ver. 1.5
@CHRS: CP866 2
[](
https://telegra.ph/file/e8dcf5cf1345c8aa550a5.jpg)**Еще раз о дураке и
стеклянном х&е**
[Он и х&й разобъет, и руки до костей
изрежет.](
https://habr.com/ru/companies/gnivc/articles/760892/)
Ну, разумеется, если написать while (1=1), то тоже будет бесконечно
циклы CPU жрать.
Неужели не самоочевидно, что тут вырождение в экспоненту будет?
Ну, написал ты CONNECT BY. А где START WITH?
И ныхрены тут инлайновые вьюхи? Ах, это не вы, это ваш ORM...
Такие кутацкие запросы я вижу в продуктивном коде где-то лет 25.
И каждый раз все несказанно изумляются, "А чтоооооооэтотаааааааамтупииииииит?!"
А вот оно и тупит.
Ручками надо писать запросы, ручками.
Между прочим - СУБД тут не при чем. Она пытается изо всех сил
выполнить ту хрень, которая ей прилетела.
Я уже видел как-то раз нечто похожее. Запрос 4 млрд строк подымал
в память и выполнялся двое суток просто потому, что один рукосуй
примерно так же написал его.
Кстати, о птицах. Иерархические структуры в реляционных таблицах
интеллигентные люди стараются реализовывать не посредством START WITH-CONNECT BY. Это
нифига не самоочевидно и представляется, будто другого решения и не
существует вовсе.
Меж тем... Тщательней надо. ТщательнЕй.
http://fido.ortoped.org.ru/photo_2023-09-14_11-08-14.jpg
--- hssergey station
* Origin: jNode ver. 1.5 (2:5055/182)
SEEN-BY: 301/1 460/58 4500/1 5001/100 5005/49
5015/255 5019/40 5020/715 848
SEEN-BY: 5020/1042 4441 12000 5030/49 1081 5055/182
5058/104 5061/133
SEEN-BY: 5083/444
@PATH: 5055/182 5020/1042 4441