Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Постраничный вывод данных из нескольких табл. (Alexey Vaskin) 31/10/2003 - 12:10:15
      Re: Постраничный вывод данных из нескольких табл. (Dinky) 31/10/2003 - 18:27:25
      Re: Постраничный вывод данных из нескольких табл. (Alexey Vaskin) 03/11/2003 - 06:31:49



From: Alexey Vaskin - 31/10/2003 - 12:10:15
Subject:Постраничный вывод данных из нескольких табл.
-----------------
Есть несколько таблиц (для простоты возьмем две). Производится поиск. По умолчанию, если не указано другое, поиск производится по всем таблицам на совпадение. Необходимо результаты поиска выводить постранично. В случае одной таблицы проблем никаких. Здесь великолепно справляется LIMIT. Но вот вопрос: как вывести постранично данные сначала из одной таблицы, потом из другой, и, в случае большего количества таблиц, так далее. Приведу пример.
Допустим есть две таблицы (синтаксис описания абстрактный)
tabl1 (
id int ...,
text varchar(255)
)

tabl2 (
id int ...,
text varchar(255)
)

Поиск по текстовым полям дал 23 записей из первой таблицы и 12 из второй. На странице решено выводить по 10 записей. Сначала необходимо показать данные из первой таблицы, затем из второй.
Для первой таблицы использование LIMIT offset, rows оправдывает себя. Но как применить его для второй, т.к. на первой и второй страницах данные из второй таблицы не будут показано вообще, на третьей лишь частично (7 записей), а на четвертой - оставшиеся 5.

UNION, который позволил бы решить проблему не предлагать. Т.к. он появился лишь в 4.0.0, а провайдер использует 3.23.58.
Временные таблицы тоже не очень интересны, т.к. существуют лишь в пределах времени жизни соединения с БД, которое закрывается при окончании работы скрипта.
















[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
11360



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |