Ответы пользователя по тегу MySQL
  • Сложный запрос к БД

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    SELECT p.uid, p.level, p.score, m.map_id FROM PlayersData p INNER JOIN MapsScores m ON m.map_id=p.map_id ORDER BY p.score DESC GROUP BY p.map_id HAVING COUNT(p.uid) <= 20

    Что-то на подобии этого, быть может? Увы проверить не могу.
    Ответ написан
    Комментировать
  • Sсhemaless для MYSQL, как?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Это очень и очень криво. Лучше уж EAV применить и уже отсюда плясать.

    А вообще нету никаких проблем использовать MongoDB в качестве дополнения к MySQL.
    Ответ написан
  • Как писать API?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Статей хватает, можете конечно написать, но врят-ли что-то-новое выйдет.

    Структуру методов, что и как должно возвращать лучше обсудите с iOS разработчиком, который будет потом имплеменить это дело. Если такого нету — максимально разбейте все на атомарные операции, упростите взаимодействие, прикиньте сами какие методы могут понадобиться (представьте что вы пишете API не для кого-то, а, например, для странички, которая через AJAX все выдерает).

    По поводу реализации — банальная сериализация вместо рендринга, больше отличий нету. Есть куча готовых компонентов которые хорошо подходят для сериализации туда и обратно. Свой такой компонент тоже пишется достаточно быстро.

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

    Я не видел ни одного RESTfull API для серьезных приложений, тобиш да, оно то REST но не полностью, так что заморачиваться тут не стоит. Достаточно просто обрабатывать какие-то базовые заголовки и GET/POST запросы. GET для выборок — тобиш данные в базе при запросе не меняются, разве что какие счетчики, а POST для создания записей в базе (по феншую результат работы функции должен возвращаться только HTTP заголовки, среди которых есть GET запрос с URI нового объекта, но на практике никто не париться и возвращает весь объект или его часть).

    Можно конечно воспользоваться SOAP апишками, но по опыту скажу что оно годно только при разработке оочень простых API, и толку от него мало. Если клиентом, конечно, будет приложение написанное на C# .NET — тогда смело SOAP и только SOAP, вам по сути разницы в реализации (имеется в виде по времени) минимум, а разработчику клиента будет намного проще. А вот на iOS с SOAP все достаточно печально.
    Ответ написан
    Комментировать
  • Хочу понять алгоритм перемещания узла в дереве nested set

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    По сути если вы заменяете местами две ноды в дереве, то у них должны просто индексы инвертироваться между собой. А если вы добавляете ноду или убираете ее из ветки — то вам придется пересчитать все индексы справа и все слева от того места где была/будет нода. Как-то так.
    Ответ написан
    Комментировать
  • Хочу понять алгоритм перемещания узла в дереве nested set

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)


    А теперь мысленно перенесите ноду в дереве из одной ветки в другую и посмотрите как пересчитать значения.
    Ответ написан
  • MySQL | Узнать есть ли совпадение, SELECT или EXPLAIN SELECT?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    А зачем экономить на спичках? Боюсь узким местом такой запрос быть ну никак не может. Да и EXPLAIN больше для тестирования и анализа работы системы.
    Ответ написан
    1 комментарий
  • Работа с массиво?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    echo $ls['fio'];


    По моему это очевидно…
    Ответ написан
    1 комментарий
  • Синхронизация локальной и удаленной БД

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Если в лоб — MySQL Workbench — Revere/Forward engendering
    Ответ написан
    1 комментарий