"SELECT COUNT(*) FROM `".$tab1."` WHERE `id1`='".(int)$_SESSION['id']."' UNION ALL
SELECT COUNT(*) FROM `".$tab2."` WHERE `id2`='".(int)$_SESSION['id']."'");
нужно получить общее число елементов
Спустя 8 минут, 37 секунд (19.01.2012 - 04:17) inpost написал(а):
2 отдельных запроса, потом плюсуй! зачем городить :)
или:
или:
SELECT COUNT(*) FROM (
select `id` ... union select `id`
)
Спустя 4 минуты, 51 секунда (19.01.2012 - 04:22) GET написал(а):
inpost
Цитата |
2 отдельных запроса, потом плюсуй! зачем городить ![]() |
а так не быстрее? Ну объединяя?
Спустя 5 минут, 55 секунд (19.01.2012 - 04:28) inpost написал(а):
A.B.C.
Через left join - 100% будет медленнее, про inner join не знаю. Тестировать надо!
Через left join - 100% будет медленнее, про inner join не знаю. Тестировать надо!
Спустя 7 минут, 51 секунда (19.01.2012 - 04:36) GET написал(а):
inpost
Еще спросить можно :)
Вот если такой запрос похожий:
из результатов составляются ссылки, есть ли способ идентифицировать ссылку из какой она получилось таблицы из tab1 или tab2? Ну в запросе фальшивое поле что-ли указать? :)
Не хочется пустое поле - идентификатор в таблицу вводить типа...t1 и t2
Еще спросить можно :)
Вот если такой запрос похожий:
mysql_query("SELECT * FROM `".$tab1."` WHERE `id1`='".(int)$_SESSION['id']."' UNION ALL
SELECT * FROM `".$tab2."` WHERE `id2`='".(int)$_SESSION['id']."' ORDER by `st`,`date` DESC");
из результатов составляются ссылки, есть ли способ идентифицировать ссылку из какой она получилось таблицы из tab1 или tab2? Ну в запросе фальшивое поле что-ли указать? :)
Не хочется пустое поле - идентификатор в таблицу вводить типа...t1 и t2
Спустя 1 минута, 31 секунда (19.01.2012 - 04:38) GET написал(а):
Разделить их не могу так как они должны быть смешаны на экране по дате отсортированы и по полю st...можно конечно в массив загнать и потом смешать, но это все ресурсы
Спустя 2 минуты, 11 секунд (19.01.2012 - 04:40) inpost написал(а):
SELECT *,'table1' AS `table` FROM ...
UNION
SELECT *,'table2' AS `table` FROM ...
Спустя 1 минута, 37 секунд (19.01.2012 - 04:41) GET написал(а):
inpost
Точно!....Спасибо!
Точно!....Спасибо!
Спустя 1 месяц, 16 дней, 8 часов, 56 минут, 52 секунды (5.03.2012 - 13:38) GET написал(а):
Блин, решил поднять тему из глубины т.к. опять встретился с тем же.
Как объединить запросы эти? Уже все варианты попробывал ошибку не показывает, но и не плюсует.
Эта часть будет выполнятся постоянно (количество новых сообщений и полное) т.е. с каждой перезагрузкой страницы поэтому хотелось бы побыстрее.
Как объединить запросы эти? Уже все варианты попробывал ошибку не показывает, но и не плюсует.
Эта часть будет выполнятся постоянно (количество новых сообщений и полное) т.е. с каждой перезагрузкой страницы поэтому хотелось бы побыстрее.
Спустя 35 минут, 34 секунды (5.03.2012 - 14:14) GET написал(а):
Вопрос снят:
"SELECT COUNT(*) as c1 FROM `".$tab1."` WHERE `id1`='".(int)$_SESSION['id']."' UNION ALL
SELECT COUNT(*) as c2 FROM `".$tab2."` WHERE `id2`='".(int)$_SESSION['id']."'");
// ...
$row['c1'] + $row['c2'];
Спустя 13 минут, 45 секунд (5.03.2012 - 14:28) GET написал(а):
inpost, прав простые запросы быстрее
_____________
Не тот велик, кто не падал, а тот кто падал и поднимался.