$sql = "
SELECT COUNT(o.id)
FROM organizations o
LEFT JOIN organizations_categories oc ON o.id = oc.organization_id
WHERE o.id IN (
SELECT f.organization_id
FROM features f
WHERE f.name = (
SELECT f2.name
FROM features f2
WHERE f2.id = %d
)
)
AND o.city_id = %d
AND oc.category_id = %d
";
$sql = sprintf($sql, $features_id, $city_id, $category_id);
$query = $this->getEntityManager()->createNativeQuery($sql, $rsm);
zavodp, там же ограничения по трафику (скорость), памяти и ядрам процессора.
чего там загружать то? будет твой VDS На 100% работать и что тут ненормального?
ThunderCat, я наоборот не встречал энтрепрайза вне БД, так же как и не встречал программистов DBA или наоборот, (первые пишут код не чтобы быстрее работало, а чтобы быстрее написать ))), вторые его вообще не пишут и не понимают в бизнеслогике), это слишком ШИРОКАЯ область, особенно для Oracle и MS SQL
текущий проект, который поддерживаю, он правда древний, Oracle (полностью все в хранимках. включая вывод XML на клиента) + тонкий клиент на C#
на сколько мне известно софт Спортмастера, написанный тем же разработчиком, работает по аналогичной схеме и большинство их проектов.
так же крупнейшие депозитарии РФ, не буду называть (возможно ком. тайна :) ))
один Oracle (все операции в хранимках) + клиент Java (Spring+Hiberbate) + еще куча всего
другой MS SQL (все операции в хранимках) + клиент ... Delphi !! )))
и большинство банковского софта в хранимках. более того не в хранимках а в пакетах (это если Oracle, ну это условно можно считать классами ))) )
нормально все поддерживается, правда в случае с денежными операциями, без доступа к живым данным или среза, работать порой печально - трудно ))
потому как код практически неначем проверить.
Ответ - хранить в коде, так как не нужно каждый раз лезть в 2 места если логика меняется, не размазывается поведение на 2 аппликации, и все легко отслеживается в вершн контроле
1. относительно БД, в нормальных случаях, весь код лежит в тех же CVS и все отслеживается, рефакторится и т.д.
2. подумайте, почему энтерпрайз до сих пор хардкодит в БД? может потому, что это и есть "в одном месте"? а из клиента дергается ТОЛЬКО процедуры. надо менять логику, перерписываете запросы В бд, в процедурах, процедуры.
3. есть приложения которые ПОЛНОСТЬЮ находятся в БД, а клиентское приложение наподобие браузера (тонкий клиент) в нем вообще никакой логики нет, кроме как XML в UI переводить.
грустно, это работать за интерес...
что-то строители/отделочники то вот за интерес не работают, все как-то денег хотят.
а айтишники почему-то должны за интерес, ведь - тыж компьютерщик... чо там типа делать то.
Валерий Иванов, не ожидал такой подставы от .replace он только первое вхождение заменяет.
тогда надо так str.replace(/[\s\n\t]/mg, "").replace(/,/mg, ".")
как-то так...