Как «постранично» прочесть содержимое таблицы с составным ключом?

Ссылка скопирована
1 ответ

Для перевода полей с php сериализации на JSON нужно в ряде таблиц перебрать все записи.
Если бы ключ был из одного int поля, то все понятно: выборку сортируем по ключу, добавляя "and pkeyField > :lastValue"

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

Сервер Мария

Дополнительно:

Ответы:

(f1 = :lastF1 && f2 > :lastf2) || (f1 > :lastf1)

https://qna.habr.com/q/1168854
Про курсоры я не подумал.

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Антон С. Ответ

Для того чтобы "постранично" прочитать содержимое таблицы с составным ключом, мы можем воспользоваться SQL запросом с использованием оператора LIMIT.

Предположим, у нас есть таблица с составным ключом, например, таблица "users" с полями "id" и "name". Для того чтобы прочитать данные из этой таблицы "постранично", мы можем использовать следующий SQL запрос:

SELECT * FROM users ORDER BY id LIMIT 10 OFFSET 0;

SELECT * FROM users ORDER BY id LIMIT 10 OFFSET 0;

В данном запросе мы указываем, что хотим выбрать 10 записей из таблицы "users" отсортированных по полю "id", начиная с 0-й записи. Если мы хотим прочитать следующие 10 записей, мы можем изменить значение OFFSET на 10:

SELECT * FROM users ORDER BY id LIMIT 10 OFFSET 10;

SELECT * FROM users ORDER BY id LIMIT 10 OFFSET 10;

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

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

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно