ФорумПрограммированиеPHP для идиотов → как гуру составляют запросы?

как гуру составляют запросы?

  • lolcat

    Сообщения: 383 Репутация: N Группа: Кто попало

    Spritz 17 декабря 2011 г. 20:42

    В зависимости от входных данных, запрос должен меняться, содержа разные предикаты.
    Я проверяю условия, например, если задана переменная, добавляю в запрос соответствующий кусочек (условий несколько, в результате получается колбаса из предикатов, объединенных AND), а потом выполняю запрос.

    Чувствую, что это как-то неправильно, но как делать иначе, не знаю! Гуглить пробовал, но ничего путного не нашел.
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 17 декабря 2011 г. 22:23, спустя 1 час 41 минуту 9 секунд

    посмотри как реализован объект селекта у дб адаптера в зендфреймоврке(к примеру)
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 17 декабря 2011 г. 23:04, спустя 40 минут 56 секунд

    юзают орм? :))
    Сапожник без сапог
  • lolcat

    Сообщения: 383 Репутация: N Группа: Кто попало

    Spritz 18 декабря 2011 г. 2:42, спустя 3 часа 37 минут 57 секунд

    А можете просто примерно алгоритм описать?
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz 18 декабря 2011 г. 4:24, спустя 1 час 41 минуту 57 секунд

    Возвращаем каждым методом объект-владелеца, после чего складываем строки, полученные в результате вызовов в определенном порядке
  • artoodetoo

    Сообщения: 5147 Репутация: N Группа: в ухо

    Spritz 18 декабря 2011 г. 7:48, спустя 3 часа 23 минуты 51 секунду

    lolcat, как ты описал обычно и происходит. тупо накапливаем кусочки и клеим по AND. ничего плохого не вижу.
    ιιlllιlllι унц-унц
  • Kikky

    Сообщения: 201 Репутация: N Группа: Кто попало

    Spritz 18 декабря 2011 г. 20:26, спустя 12 часов 38 минут 38 секунд

    lolcat, у нас на работе все делают именно так :-)
  • lolcat

    Сообщения: 383 Репутация: N Группа: Кто попало

    Spritz 19 декабря 2011 г. 0:24, спустя 3 часа 57 минут 37 секунд

    Спасибо, я все понял.

Пожалуйста, авторизуйтесь, чтобы написать комментарий!