За последние 24 часа нас посетили 51082 программиста и 1801 робот. Сейчас ищут 873 программиста ...

Пользователей в разные таблицы или всех в одну?

Тема в разделе "PHP для новичков", создана пользователем viktor72, 8 авг 2017.

Метки:
  1. viktor72

    viktor72 Активный пользователь

    С нами с:
    20 дек 2015
    Сообщения:
    326
    Симпатии:
    6
    Дилемма - Есть пользователи двух видов - "клиенты" и "кандидаты" .
    в каждой группе по 20 000 пользователей.
    Вопрос - сделать одну таблицу с населением 40 000 пользователей и к ней прикрутить табличку для разделения пользоваталей по их видам или сделать для каждого вида пользователей по одной таблице?
    Как будет программа быстрее работать и все такое прочее?
    img-2017-08-08-23-11-26.png
     
  2. lastdays

    lastdays Активный пользователь

    С нами с:
    27 сен 2012
    Сообщения:
    410
    Симпатии:
    74
    Как по мне, пользователей держать всех в одной таблице изменяя им нужный статус.
    Не вижу смысла дублировать по-сути таблицу, это не упростит выполнение задачи, а только ее усложнит.
     
    viktor72 нравится это.
  3. sk-_-

    sk-_- Новичок

    С нами с:
    9 авг 2017
    Сообщения:
    7
    Симпатии:
    2
    Лучше сделать одну таблицу и по типу юзера в поле например usertype получать нужные типы, иначе при выборках потом нужно будет делать постоянные UNION если данные нужны будут из двух таблиц. и если идентификаторы из двух таблиц будут совпадать, то это будет еще веселее.
    --- Добавлено ---
    Можно даже сильно не заморачиваться с таблицей справочником (не надо будет делать постоянные JOIN для получения типов)
     
    viktor72 нравится это.
  4. viktor72

    viktor72 Активный пользователь

    С нами с:
    20 дек 2015
    Сообщения:
    326
    Симпатии:
    6
    - usertype - это вы имеете ввиду как я предложил на рисунке №1 ? или есть другой способ?
     
  5. lastdays

    lastdays Активный пользователь

    С нами с:
    27 сен 2012
    Сообщения:
    410
    Симпатии:
    74
    Да просто.

    id, name, firstname, lastname, usertype ( 0 = бот, 1= юзер без прав, 2 = юзер с правами) не?
    Ну или же, если нужны какие-либо права продублировать в таблице отдельной, ничего не изменится от этого.
    Статус заполнить цифрами и уже от этого "скакать".
     
  6. viktor72

    viktor72 Активный пользователь

    С нами с:
    20 дек 2015
    Сообщения:
    326
    Симпатии:
    6
    то есть в таблице user создать поле для каждого вида изеров.. и когда будет запрос по нему и спрашивать... например id_user1 и далее по тексту. так?
    Есть ещё проблема, что у разного вида юзеров есть разные обязательные поля. я тут предполагаю при инсертах вносить значения по умолчанию юзерам для которых эти поля не принадлежат а при выводе в браузер их не выводить а просто игнорировать. или могут быть проблемы?