WedX - журнал о программировании и компьютерных науках

Неизвестный столбец «users.user_id» в предложении «where»

этот оператор показывает список друзей пользователя 2 и подсчитывает количество общих друзей пользователя 1. Когда я запускаю это, я получаю следующую ошибку:

: Неизвестный столбец «users.user_id» в «где пункт»

Запрос

 SELECT  users.user_id,

(SELECT count(a.friendID) FROM
(
  SELECT user_two_id friendID FROM friends  WHERE user_one_id = **users.user_id**
    UNION 
  SELECT user_one_id friendID FROM friends WHERE user_two_id = users.user_id
) AS a 
JOIN  
(
  SELECT user_two_id friendID FROM friends WHERE user_one_id = 1
    UNION 
  SELECT user_one_id friendID FROM friends WHERE user_two_id = 1
) AS b 
ON  a.friendID = b.friendID) as mutual

FROM friends LEFT JOIN  users    ON friends.user_one_id = users.user_id or  friends.user_two_id = users.user_id  WHERE (friends.user_one_id = 2 OR friends.user_two_id = 2)   AND users.user_id != 2
09.05.2018

  • Пожалуйста, предоставьте несколько примеров данных таблицы и ожидаемый результат вашего запроса. 09.05.2018
  • Совет для профессионалов Установите правильный отступ в SQL-запросе. НАМНОГО проще проверить код на наличие проблем. Например, вот инструмент для этого. dpriver.com/pp/sqlformat.htm 09.05.2018
  • таблица друзей user_one_id | user_two_id 1 | 5 1 | 3 2 | 1 2 | 3 таблица пользователей user_id 1 2 3 4 5 пользователь 2 друзья 1,3 получить количество общих друзей с пользователем 1 1 получить количество общих друзей 1 3 получить общее количество 1 09.05.2018

Ответы:


1

Внутренний запрос

 SELECT user_one_id friendID FROM friends WHERE user_two_id = users.user_id

Не знает, что такое users.user_id

09.05.2018

2

ВЫБЕРИТЕ user_two_id ИД_друга ИЗ друзей, ГДЕ user_one_id = users.user_id ОБЪЕДИНЕНИЕ ВЫБЕРИТЕ user_one_id ИД друга ИЗ друзей, ГДЕ user_two_id = users.user_id

содержание полужирного цвета должно быть конкретным

09.05.2018
  • Если я указываю users.user_id с номером, это работает хорошо, но я хочу получить users.user_id, который выбирается от начала до statemnet. 09.05.2018
  • Вы должны поделиться своими таблицами и ожидаемым результатом. 09.05.2018

  • 3
  • просто правильно в вашем заявлении: LEFT JOIN users ON (friends.user_one_id = users.user_id) находится до, а не после него, после исправления он работает, но он получает одинаковый взаимный подсчет для всех users_id, но я хочу проверить каждый взаимный подсчет user_id с помощью пользователь 1 09.05.2018
  • Новые материалы

    Я хотел выучить язык программирования MVC4, но не мог выучить его раньше, потому что это выглядит сложно…
    Просто начните и учитесь самостоятельно Я хотел выучить язык программирования MVC4, но не мог выучить его раньше, потому что он кажется мне сложным, и я бросил его. Это в основном инструмент..

    Лицензии с открытым исходным кодом: руководство для разработчиков и создателей
    В динамичном мире разработки программного обеспечения открытый исходный код стал мощной парадигмой, способствующей сотрудничеству, инновациям и прогрессу, движимому сообществом. В основе..

    Объяснение документов 02: BERT
    BERT представил двухступенчатую структуру обучения: предварительное обучение и тонкая настройка. Во время предварительного обучения модель обучается на неразмеченных данных с помощью..

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..


    Для любых предложений по сайту: [email protected]