Задать вопрос
@sergey4kin

Как JOIN две таблицы SQL если один из столбцов текстовый и содержит лишние данные?

Есть две таблицы, которые необходимо JOIN . Проблема в том, что в первой таблице нужный столбец "id" в int64, а во второй таблице в виде текста с префиксом ("abc123", "abc456"). Конвертировать "id" первой таблицы в текст и дописать к нему префикс, или обрезать префикс столбца второй таблицы и конвертировать в число - не получается.

Ошибка -
JOIN: each equality predicate argument must depend on exactly one JOIN input
  • Вопрос задан
  • 464 просмотра
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Инженер по тестированию
    5 месяцев
    Далее
  • Яндекс Практикум
    Java-разработчик
    10 месяцев
    Далее
  • Яндекс Практикум
    Python-разработчик расширенный
    14 месяцев
    Далее
Решения вопроса 1
SELECT a.id, b.comment
FROM a
INNER JOIN b
ON a.id = CAST(SUBSTRING(b.prefid, 4) AS UNSIGNED)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы