Ответы пользователя по тегу MySQL
  • SQL запрос из нескольких ARCHIVE таблиц с общим ORDER BY?

    Sardar
    @Sardar
    Acrhive база это всегда full table scan. Зато они очень быстрые на добавление. Любое выражение ORDER BY на такой таблице это merge sort со сливом во временные файлы кучи данных (по сути построение индекса на лету), а значит долго. UNION ALL не будет будет сортировать несколько выборок сразу, он просто соединяет результаты. С другой стороны, все ваши таблицы содержат данные только одного интервала, а значит все записи таблицы со старшей датой будут старше записей любой другой младшей таблицы. Тогда просто UINION ALL всех таблиц в порядке даты даст вам нужный результат.
    Ответ написан
    Комментировать
  • Генерация JSON с вложенными объектами

    Sardar
    @Sardar
    Вас чем-то не устраивает

    SELECT ... FROM posts p JOIN users u ON u.userid = p.userid

    или, быть может, я не понял вопроса?
    Ответ написан
    2 комментария
  • Что выбрать: primary key или unique для уникального foreign key?

    Sardar
    @Sardar
    Лучше UNIQUE. Это позволит иметь отдельный простой точный id для связной таблицы. Это обычно упрощает работу потом, если придется работать со связной таблицей в параллельных запросах вне serialized транзакций. Лишний индекс для int primary key не проблема.
    Ответ написан
    Комментировать