Выборка с бд Mysql с динамическим именем таблицы

183
22 апреля 2018, 23:43

Подскажите пожалуйста. Нужно сделать выборку с бд при это название таблицы, откуда делается выборка, образуется исходя из префикса таблицы и данных которые извлекаются из таблицы.

Таблицы: Сайты, Чаты и Чат_ID (таблицы с перепиской).

Мне надо получить id сайта и количество непрочитанных у этого сайта. Делаю так:

SELECT
  s.id AS id,
 (SELECT
   COUNT(*)
  FROM
    КАК ПОЛУЧИТЬ ИМЯ ТАБЛИЦЫ? AS ch
  WHERE
    ch.chat_id = c.id AND
    status = 0 AND
    type = 'CLIENT'
  ) AS unread
FROM
  site AS s
  LEFT JOIN chat AS c ON
    c.site_id = s.id AND
    c.operator_id = s.user_id
WHERE
  s.user_id = 1;

Название таблицы состоит из префикса и id сайта - chat_1.

Может это и не правильно - не кидайте тапкапи)

Answer 1

Это не правильно. Вместо набора таблиц Чат_ID вам нужна одна таблица Переписки. А в эту таблицу вы добавите поле Чат_ID

READ ALSO
Выборка по двум условиям mysql

Выборка по двум условиям mysql

Есть две таблицы, они связаны между собой один ко многимТаблица client содержит первичный ключ ID, а таблица orders содержит внешний ключ ID_of_client

193
MySQL + изображение

MySQL + изображение

Какой тип данных выбрать при составлении таблицы MySQL, для того чтобы можно было сохранять в нее изображения?

197
Реализация клиент серверного чата Qt c++

Реализация клиент серверного чата Qt c++

Здравствуйте, мне нужно реализовать данные вещи: - Я написал простенький чатик, но не могу понять, как реализовать личные сообщения(в голову...

190
с++ помогите с задачей [требует правки]

с++ помогите с задачей [требует правки]

только начал программировать и тут проблемка:

186