За последние 24 часа нас посетили 22976 программистов и 1227 роботов. Сейчас ищут 708 программистов ...

PHP + Mysql + JOIN

Тема в разделе "PHP и базы данных", создана пользователем Арсентий, 30 сен 2019.

  1. Арсентий

    Арсентий Новичок

    С нами с:
    30 сен 2019
    Сообщения:
    2
    Симпатии:
    0
    Здравствуйте. Помогите понять новичку, куда правильно копать. PHP+Mysql. Делаю таблицу с данными. Данных для одной записи около 30-ти. Все они прикрепляются к ID, т.е. в таблице столбцы ID, NAME, DESCRIPTION и тд... Дело в том, что по всем этим столбцам нужны будут сортировки/фильтры и это делать я умею, НО, есть маленькое представление в голове, что более грамотно не пихать всё в одну таблицу, а как то структурировано разместить по нескольким (2, 3, смотря сколько данных). Но с этим никогда не сталкивался и всё никак не могу понять эти JOIN'ы.

    Как я понимаю, таблицы нужно связывать по одному ID, а дальше делать какую-то связку в коде,, "сопряжение". Получится ли потом, после этого "сопряжения" делать быстрые сортировки/фильтры, не нагружая сервер? Строк будет несколько сотен тысяч.

    Буду благодарен за объяснения, "понятливые" статейки и примеры.
     
  2. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.794
    Симпатии:
    650
    В ширину таблицы делятся в зависимости от кол-ва описываемых сущностей, их назначения и т.п.
    В длину – в зависимости от объема таблиц, актуальности хранящихся в них записей и т.п. Также тут можно использовать деление на разделы вместо реального разделения на неск. таблиц.

    Также можно почитать про нормализацию, индексирование полей (выбор первичного ключа, создание уник./не уник. индексов и т.п.).
    --- Добавлено ---
    P.S. Короче от задачи нужно отталкиваться, а не пытаться притянуть то, что, может, тебе и нафиг не нужно.
    --- Добавлено ---
    JOIN'ы навредить могут, поэтому фильтрацию, например, нужно делать по суррогатным проиндексированным ключам (id), а не по человеку понятным значениям (именам) и т.д.