Итак, у меня есть плохо спроектированная база данных (я думаю), которую я не могу изменить. Это приложение для Twitter, в котором пользователи могут следовать друг за другом. У каждого пользователя есть строка `s в таблице, и в этой таблице есть столбец с именем 'follow', который представляет все USERID, которые пользователь выполняет. В этой колонке есть список USERID, отделенный от комы. Так что скажем, что пользователь с идентификатором 1 следит за пользователями 2 и 3, а пользователь с идентификатором 2 следит за пользователем 1, таблица будет выглядеть так, пользователь 3 не следует никому.Выбор всех строк, где столбец имеет определенный ID
USERID | username | following
-------------------------------------------
1 | some user | 2,3
2 | test1 | 1
3 | test2 |
Вопрос: как я могу показать всех пользователей, которым нужен пользователь 1?
EDIT 1
код, который не работает с 491243, размещая здесь, может быть, я что-то пропустил в PHP
$USERID = $_GET['userid'];//this has a value, so not the problem here
$sql_select = "SELECT B.USERID FROM users A INNER JOIN users B ON FIND_IN_SET(B.USERID, B.following) > 0 WHERE B.USERID = '$USERID'";
$result_select = mysqli_query($link,$sql_select);
while($record = mysqli_fetch_array($result_select))
{
$following = $record['USERID'];
var_dump($following); //result is nothing, not even NULL
}
EDIT 2 Только для здравомыслие проверить я это сделал:
$sql_select = "SELECT USERID FROM users WHERE USERID = '1'";
$result_select = mysqli_query($link,$sql_select);
while($record = mysqli_fetch_array($result_select))
{
$following = $record['USERID'];
var_dump($following); //result is 1, like it`s supposed to be
}
Возможно ли, что мой PHP-код неверен для запроса в повторах?
Почему это, что люди, ответственные за такой плохой дизайн никогда не должны реально использовать его ... –