@UnFox

Как получить все чаты, в которых есть юзер?

В бд есть колонка chats
e7OO7QLAp4U.jpg
нужно по id юзера получить все чаты, в которых упоминается его id (т.е в users)
  • Вопрос задан
  • 104 просмотра
Пригласить эксперта
Ответы на вопрос 1
@bkosun
Примерно так:
$users[] = 1; // ID пользователя

$q = "SELECT * FROM table regexp '[[:<:]](" . implode( '|', $users) . ")[[:>:]]";


Но я рекомендую прочитать про нормализацию отношений в базе данных и привести структуру текущей БД к 3 нормальной форме:

users
id, first_name, last_name, ...

chats
id, user_id, name, ...

chats_users
chat_id, user_id


UPD:

$q = "SELECT * FROM table WHERE FIND_IN_SET('1', `users`)"; // 1 - ID пользователя


https://www.w3schools.com/sql/func_mysql_find_in_s...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы