MySQL - нужно запросить из нескольких столбцов

Пожалуйста, помогите мне написать правильный запрос для нескольких таблиц. Мне нужно заменить все идентификаторы здесь из другой таблицы API json

Я пытаюсь сделать такой запрос

SELECT incident.`number`, `user`.first_name, (SELECT `user`.first_name  from ITSM.`user` JOIN incident on `user`.sys_id = incident.id_created_by) as createdby
from ITSM.incident
JOIN ITSM.`user` on incident.id_caller = `user`.sys_id
;*

но это # ​​не работает, я получил ошибку: Подзапрос возвращает более 1 строки

Как сделать правильный запрос?

Этот тоже не работает, та же ошибка:

SELECT incident.`number`, (SELECT user.first_name from ITSM.`user`, ITSM.incident WHERE user.sys_id = incident.id_created_by) as createdby
from ITSM.incident
JOIN ITSM.`user` on incident.id_caller = user.sys_id*
;

и это мой Идентификатор БД для пользователя, создавшего

Пожалуйста, предоставьте более подробную информацию и уточните, что вы хотите сделать. Вы пишете «мне нужно заменить все идентификаторы», но вы пишете только запросы. Вы хотите заменить что-то или выбрать что-то? Не могли бы вы предоставить свои данные здесь dbfiddle.uk/?rdbms=mysql_8.0 или, по крайней мере, добавить необходимые команды SQL для создания ваших данных, таким образом, ваша проблема может быть воспроизведена? Спасибо.

Jonas Metzler 23.04.2022 10:42

Пожалуйста, не публикуйте изображения текста — просто опубликуйте текст. Публикация только что сделанного снимка экрана ограничивает объем помощи, которую мы можем предложить, поскольку мы не можем скопировать текст и обработать запрос, используя ваши образцы данных со снимка экрана. Посмотрите, как создать минимальный воспроизводимый пример

SOS 23.04.2022 18:46
3 метода стилизации элементов HTML
3 метода стилизации элементов HTML
Когда дело доходит до применения какого-либо стиля к нашему HTML, существует три подхода: встроенный, внутренний и внешний. Предпочтительным обычно...
Формы c голосовым вводом в React с помощью Speechly
Формы c голосовым вводом в React с помощью Speechly
Пытались ли вы когда-нибудь заполнить веб-форму в области электронной коммерции, которая требует много кликов и выбора? Вас попросят заполнить дату,...
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Стилизация и валидация html-формы без использования JavaScript (только HTML/CSS)
Будучи разработчиком веб-приложений, легко впасть в заблуждение, считая, что приложение без JavaScript не имеет права на жизнь. Нам становится удобно...
Flatpickr: простой модуль календаря для вашего приложения на React
Flatpickr: простой модуль календаря для вашего приложения на React
Если вы ищете пакет для быстрой интеграции календаря с выбором даты в ваше приложения, то библиотека Flatpickr отлично справится с этой задачей....
В чем разница между Promise и Observable?
В чем разница между Promise и Observable?
Разберитесь в этом вопросе, и вы значительно повысите уровень своей компетенции.
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Что такое cURL в PHP? Встроенные функции и пример GET запроса
Клиент для URL-адресов, cURL, позволяет взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
0
2
36
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вам не нужен подзапрос. Просто обратитесь к исходной таблице каждого столбца в предложении select, здесь, если вам нужно 2 соединения с одной и той же таблицей, дайте им псевдоним и обратитесь к столбцам, используя этот псевдоним.

SELECT incident.`number`
    , caller.first_name as caller_name
    , creator.first_name AS createdby
FROM ITSM.incident
JOIN ITSM.`user` AS caller ON incident.id_caller = caller.sys_id
JOIN ITSM.`user` AS creator ON incident.id_created_by = creator.sys_id

номер Я предполагаю, что ваша логика соединения верна

Неа. этот запрос возвращает id_caller — пользователь, вызвавший этот инцидент. Я добавил новые скрины для моей темы, чтобы лучше описать

flamixx 23.04.2022 10:50

пытался ответить по телефону - не получилось - теперь ответ изменен

Paul Maxwell 23.04.2022 11:06

Другие вопросы по теме