Перейти к публикации
  • Сейчас на странице   Всего пользователей: 2   (0 пользователей, 2 гостя)

Rooster

Программирование[9]

Перепись  

260 пользователей проголосовало

У вас нет прав на голосование в этом опросе, или на просмотр результатов опроса. Пожалуйста, войдите или зарегистрируйтесь для голосования в опросе.

Рекомендованные сообщения

Нихуя не понял.

Почему ты просто не прогонишь по каждому условию?


 

DB

59221730.png


Я - гений, ёпта

bfe7003be27e8e81ce6a7d2d8192e9ae.jpg


22


msg-93176-0-72842500-1438846470_thumb.jpg

Поделиться сообщением


Ссылка на сообщение

если твои фильтры непересекающиеся, сплитишь их на отдельные и хуяришь динамик склом запросы, соединяя их между собой union all

если они еще и пересекающиеся, то придется сверху еще дистинкт ебнуть, че поделать

 

запускать все фильтры в 1 запросе закончится либо тем, что оптимизатор их перепишет в какой-то один, если повезет, или он положит хуй на индексы и прочитает тебе всю таблицу и начнет фильтровать в памяти

SpooMyFly понравилось это

Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение
Kant написал 2 минуты назад:

если они еще и пересекающиеся, то придется сверху еще дистинкт ебнуть, че поделать

Проще наверное сам фильтр схлопнуть.

Дешевле, как минимум.


 

DB

59221730.png


Я - гений, ёпта

bfe7003be27e8e81ce6a7d2d8192e9ae.jpg


22


msg-93176-0-72842500-1438846470_thumb.jpg

Поделиться сообщением


Ссылка на сообщение

любые оры в запросе кроме тех, которые оптимизатор в состоянии переделать внутри себя на джоин таблицу заканчиваются индекс сканом, так что объединять мягко говоря опасно для жизни


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

Эт понятно. Я про дистинкт именно. Если частые пересечения лучше сам фильтр фигануть сразу.

Kant написал 5 минут назад:

любые оры

Эта хуйня кейзом решается, бтв.


 

DB

59221730.png


Я - гений, ёпта

bfe7003be27e8e81ce6a7d2d8192e9ae.jpg


22


msg-93176-0-72842500-1438846470_thumb.jpg

Поделиться сообщением


Ссылка на сообщение

если там частые пересечения ему надо просто самому переделать фильтр на более общий, а не пытаться скормить это серверу

 

и не понял, что у тебя там кейзом решается

ор фильтрует данные на диске, у тебя условно в индексе бинарное дерево поиска, допустим с 1 по 100 айдишки лежат

вот пришел к тебе такой челик и просит, найди мне строку с айди 6 и с айди 87

сервер такой лезет в вершину дерева, видит там число 50, у него 6 слева, а 87 справа, и куда ему идти?

правильно отдельно 6, отдельно 87, никак ты вместе их не найдешь

а иногда когда таких или много или оптимизатору сложно, он просто кладет болт на индекс и читает всё и сравнивает на месте уже значения в листьях


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение
Kant написал 1 минуту назад:

если там частые пересечения ему надо просто самому переделать фильтр на более общий, а не пытаться скормить это серверу

 

Я о том же.

 

Kant написал 1 минуту назад:

и не понял, что у тебя там кейзом решается

 

Kant написал 17 минут назад:

он положит хуй на индексы и прочитает тебе всю таблицу и начнет фильтровать в памяти

Вот эту хуйню делать не будет, если ОР переписать на кейз. МС точно.


 

DB

59221730.png


Я - гений, ёпта

bfe7003be27e8e81ce6a7d2d8192e9ae.jpg


22


msg-93176-0-72842500-1438846470_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
(изменено)

Ну у меня есть поле в приложении (на хедере или главной форме), оно такое умное-хуюмное, в него можно будет вписать любой DateFilter, даже самый ебанутый через OR
есть еще сабформа линий результат поиска должен отображаться на ней (сабформ несколько и они ссылаются на другие таблицы)

Как вы предлагаете мне упростить этот фильтр? Сказать юзеру хуй вам, а не фильтр вводите только одну дату чи шо? (меня нах пошлют)


Изменено пользователем Drakonian

Поделиться сообщением


Ссылка на сообщение
(изменено)

не понятно что такое "любой DateFilter". что такое DateFilter вообще?

 

назови ограничения этого фильтра

там sql можно писать?

или там можно писать булевые выражения над x.startDate x.endDate

на каком языке/DSL данная строка? можешь описать 

эни вей - тебе придется просто парсить этот язык/DSL (если такой парсилки нет и задача пока только в стадии дизайна) а потом преобразовывать условия в sql, т.е. написать интерпретатор твоего dsl который выдает кусок sql запроса который можно вставить в where, либо если этого недостаточно полностью генерит sql запрос


Изменено пользователем Just.Doit

 

очень крутые котейки

RqvSzvr.png


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение
(изменено)
Just.Doit написал 48 минут назад:

не понятно что такое "любой DateFilter". что такое DateFilter вообще?

 

назови ограничения этого фильтра

там sql можно писать?

или там можно писать булевые выражения над x.startDate x.endDate

на каком языке/DSL данная строка? можешь описать 

эни вей - тебе придется просто парсить этот язык/DSL (если такой парсилки нет и задача пока только в стадии дизайна) а потом преобразовывать условия в sql, т.е. написать интерпретатор твоего dsl который выдает кусок sql запроса который можно вставить в where, либо если этого недостаточно полностью генерит sql запрос

 

Там можно писать в таком формате
D1..D2|D3|D4|..D5|D6..
где .. это рейндж, а | or
D1,D2,D3 это разные даты 

Почему именно такой формат? Это дефолтный формат моей ERP.

На самом деле код я буду писать на AL, а не на SQL, но почти все что можно сделать через SQL можно сделать на AL, поэтому я и спрашиваю о SQL, ведь сути задачи это не меняет вроде бы

система ERP сама эту магию преобразует в SQL фильтр на бекграунде, проблема то не в этом


Изменено пользователем Drakonian

Поделиться сообщением


Ссылка на сообщение
(изменено)

ну окей. у тебя есть DSL с 3мя термами

..

|

Data

и логические правила их комбинирования (композиции)

если у тебя в этой же ЕРП нет парсера этого DSL то надо бы написать свой. в теории можно просто порезать на подстроки по "|" а дальше смотреть рендж это или точка

дальше у тебя получается набор ренджей/точек (где точку можно обобщить до ренджа с одинаковыми границами) переводишь каждый рейндж в функцию проверки пересечения 2х рейнджей (дат из таблицы и рейнджа) - выше мы помнится как-то ее обсуждали, кажется как раз с тобой и еще тогда правило де моргана кто-то не знал (или там было чтото другое?)

и у вот генеришь через or применение данных функций в where

или через union + distinct

в шом проблема та

 

PS: соотв нужны индексы на поля дат - тогда фул сканов не будет. каждое условие будет по индексу отрабатывать


Изменено пользователем Just.Doit

 

очень крутые котейки

RqvSzvr.png


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение

я отупел мне кажется очень сильно за последнее время потому что на этом форуме зарегистрировался и стал в разные флуд топики хуйней срать

до меня даже основы ооп очень долго доходят я не могу самостоятельно что-то придумать почти или найти я все гуглю почти и копирую с чужого кода КАК мне самому практиковаться когда у меня 0 ИДЕЙ что написать и КАК это реализовать 

что мне нахуй 10 часов переводить переменные в разные форматы и косноль врайтлайн писать с ифами элсами которое итак все понятное чтобы дальше двинуться я не ПОНИМАЮ вот я начал второй раз подряд изучать самые первые уроки все понял оттуда вроде легко сделал по ним дз а дальше сразу ПИЗДЕЦ какой-то начинается у меня нет скилла чтобы решить полностью самостоятельно какую-нибудь задачу где например нужен метод в который добавить циклы и еще туда возможно цикл с условием я просто ДОЛБОЕБ ЕБАНЕЙШИЙ именно я не знаю советуют практиковаться но как практиковаться если ты не знаешь что делать?? типа сидеть на одном месте 10+ минут и думать вот что сюда можно высрать? Я НЕ ПОНИМАЮ я не могу просто втыкать в экран на протяжении 10 минут и пытаться ПРИДУМАТЬ что здесь нужно сделать, у меня уже спустя 2-3 минуты начинаются посторонние мысли не связанные с моей работой. (о телках, о своих планах, о ебучем бате который просто ходит в ебучем коридоре и раздражает меня одним присутствием)

я не могу нормально сконцентрироваться и сесть ПОДУМАТЬ мне кажется что у меня сдвг

Поделиться сообщением


Ссылка на сообщение
Plants vs Zombies написал 30 минут назад:

я отупел мне кажется очень сильно за последнее время потому что на этом форуме зарегистрировался и стал в разные флуд топики хуйней срать

до меня даже основы ооп очень долго доходят я не могу самостоятельно что-то придумать почти или найти я все гуглю почти и копирую с чужого кода КАК мне самому практиковаться когда у меня 0 ИДЕЙ что написать и КАК это реализовать 

что мне нахуй 10 часов переводить переменные в разные форматы и косноль врайтлайн писать с ифами элсами которое итак все понятное чтобы дальше двинуться я не ПОНИМАЮ вот я начал второй раз подряд изучать самые первые уроки все понял оттуда вроде легко сделал по ним дз а дальше сразу ПИЗДЕЦ какой-то начинается у меня нет скилла чтобы решить полностью самостоятельно какую-нибудь задачу где например нужен метод в который добавить циклы и еще туда возможно цикл с условием я просто ДОЛБОЕБ ЕБАНЕЙШИЙ именно я не знаю советуют практиковаться но как практиковаться если ты не знаешь что делать?? типа сидеть на одном месте 10+ минут и думать вот что сюда можно высрать? Я НЕ ПОНИМАЮ я не могу просто втыкать в экран на протяжении 10 минут и пытаться ПРИДУМАТЬ что здесь нужно сделать, у меня уже спустя 2-3 минуты начинаются посторонние мысли не связанные с моей работой. (о телках, о своих планах, о ебучем бате который просто ходит в ебучем коридоре и раздражает меня одним присутствием)

я не могу нормально сконцентрироваться и сесть ПОДУМАТЬ мне кажется что у меня сдвг

узнаю себя

Поделиться сообщением


Ссылка на сообщение
Plants vs Zombies написал 36 минут назад:

типа сидеть на одном месте 10+ минут и думать вот что сюда можно высрать?

да

сначала и по 30+, потом ты будешь тратить на это 10 наносекунд

но снова пару часов+, а то и пару дней на что-то посложнее


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение
Plants vs Zombies написал 53 минуты назад:

я отупел мне кажется очень сильно за последнее время потому что на этом форуме зарегистрировался и стал в разные флуд топики хуйней срать

до меня даже основы ооп очень долго доходят я не могу самостоятельно что-то придумать почти или найти я все гуглю почти и копирую с чужого кода КАК мне самому практиковаться когда у меня 0 ИДЕЙ что написать и КАК это реализовать 

что мне нахуй 10 часов переводить переменные в разные форматы и косноль врайтлайн писать с ифами элсами которое итак все понятное чтобы дальше двинуться я не ПОНИМАЮ вот я начал второй раз подряд изучать самые первые уроки все понял оттуда вроде легко сделал по ним дз а дальше сразу ПИЗДЕЦ какой-то начинается у меня нет скилла чтобы решить полностью самостоятельно какую-нибудь задачу где например нужен метод в который добавить циклы и еще туда возможно цикл с условием я просто ДОЛБОЕБ ЕБАНЕЙШИЙ именно я не знаю советуют практиковаться но как практиковаться если ты не знаешь что делать?? типа сидеть на одном месте 10+ минут и думать вот что сюда можно высрать? Я НЕ ПОНИМАЮ я не могу просто втыкать в экран на протяжении 10 минут и пытаться ПРИДУМАТЬ что здесь нужно сделать, у меня уже спустя 2-3 минуты начинаются посторонние мысли не связанные с моей работой. (о телках, о своих планах, о ебучем бате который просто ходит в ебучем коридоре и раздражает меня одним присутствием)

я не могу нормально сконцентрироваться и сесть ПОДУМАТЬ мне кажется что у меня сдвг

у нас как-то на работе была анкетка 360 по софтскилам

и там был пункт про внимательность или способность фокусироваться. самый бля непонятный. и я думал, ну как можно не уметь фокусироваться. просто сидишь и думаешь и решаешь задачу - куда уж проще

а оказывается так бывает

ну хули, развивай софтскил фокусироваться + уметь учится. в программировании это чуть ли не самое важное

 

вообще больше похоже на незамотивированность + куча вокруг тебя вещей которые отвлекают

на ютубе дохуя роликов как с этим бороться

начиная от отключите все уведомления и вообще проведите 1 день без соцсетей, чатов и контента, до создайте рабочее место на котором вы только работаете и не делаете ничего другого.


 

очень крутые котейки

RqvSzvr.png


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение

ну типа бывает такое, что даже отключив все нотификации и закрыв соц сети, мыслями утекаешь куда-то туда, с этим бороться уже сложнее, попробуй медитировать или заняться вязанием

Поделиться сообщением


Ссылка на сообщение

Всем привет, прошло почти 3 года с тех пор, как вкатился в айти, ливнув с нефтянки. Периодически писал/пишу фидбек тут. 
В прошлый раз писал, что откалибровался на сеньора вебмакаку, в крупную компанию (первую для меня), полгода работал там. Сейчас вновь откалибровался на сеньора в один известный ру банк.
Наконец-то понял, что такое разработка, когда можно никуда не спешить. Получается соблюдать режим работы-отдыха, есть желание заниматься дополнительно. 
По вашему совету брал 1,5 месяца отпуска - это пошло строго на пользу, как перезагрузка. Рекомендую всем, кто устал и начинает перегорать. 
В целом всё, всех с наступающим :pidorasy:

Kant, GoldRobot, m()stEVIL и 3 другим понравилось это

.

Поделиться сообщением


Ссылка на сообщение

имею 7 дней отпуска за ласт 2 года, чувствую себя заебись (нет)

Lyra.ZloyDis, HAPKOMAH, m()stEVIL и 3 другим понравилось это

Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение
HAPKOMAH написал 4 минуты назад:

Всем привет, прошло почти 3 года с тех пор, как вкатился в айти, ливнув с нефтянки. Периодически писал/пишу фидбек тут. 
В прошлый раз писал, что откалибровался на сеньора вебмакаку, в крупную компанию (первую для меня), полгода работал там. Сейчас вновь откалибровался на сеньора в один известный ру банк.
Наконец-то понял, что такое разработка, когда можно никуда не спешить. Получается соблюдать режим работы-отдыха, есть желание заниматься дополнительно. 
По вашему совету брал 1,5 месяца отпуска - это пошло строго на пользу, как перезагрузка. Рекомендую всем, кто устал и начинает перегорать. 
В целом всё, всех с наступающим :pidorasy:

красава, я думал у тебя поменьше опыта на год где-то, помню когда ты вкатывался я уже работал. Скок джаст дуитов зп? (курс 1дд - 100к р)

скорей всего, как раз после НГ возьму себе отпуск, а после него, может быть, и вовсе сьебусь из конторы в чистое плаванье. Хотя я уже с ~25 ноября практически не работаю, сижу на митингах только, за все это время сделал ~5 тикетов на уровне "написать гет ендпоинт". Но меня даже так работать заебывает шас.

Поделиться сообщением


Ссылка на сообщение
Kant написал 3 часа назад:
Plants vs Zombies написал 4 часа назад:

типа сидеть на одном месте 10+ минут и думать вот что сюда можно высрать?

да

сначала и по 30+, потом ты будешь тратить на это 10 наносекунд

но снова пару часов+, а то и пару дней на что-то посложнее

До сих пор не могу нормально воспринимать, что часов по пять сидишь, дебажишь, мозги ломаешь.

Довольный заливаешь правки, а там одна ссаная строчка.

:onneponimaet:

 

GoldRobot понравилось это

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...