Однострочный подзапрос возвращает более одной строки.
Это ошибка, которую я получаю при выполнении следующего кода снежинки. Я знаю, что это из-за того, что функция TO_VARCHAR предназначена не для целого столбца таблицы ... есть идеи, как сделать обходной путь и применить его ко всему столбцу?
SELECT sv.SKU
, li.price
, li.cost_price
, pc.product_description
FROM raw.stitch_heroku.spree_line_items as li
LEFT OUTER JOIN (SELECT *
FROM raw.stitch_heroku.spree_variants
WHERE LENGTH(raw.stitch_heroku.spree_variants.SKU) Between 4 and 5) as sv
ON li.variant_id = sv.id
LEFT JOIN (SELECT analytics.dbt_lcasucci.product_category.product_description
, TO_VARCHAR(analytics.dbt_lcasucci.product_category.product_ID)
FROM analytics.dbt_lcasucci.product_category) as pc
ON (SELECT TO_VARCHAR(analytics.dbt_lcasucci.product_category.product_ID)
FROM analytics.dbt_lcasucci.product_category) = sv.id
GROUP BY sv.SKU,li.price,li.cost_price,pc.product_description
Мне нужно изменитьтип данных таблицы с именем analytics.dbt_lcasucci.products
от int до varchar, поскольку без этого объединение не распознает эти поля и будет просто печатать нулевые значения, даже если фактическое содержимое ячеек будет совпадать.