Я на последних этапах создания отчета и я столкнулся с этой ошибкой:
Выравнивание по левому краю - NVARCHAR/BIGINT
Error converting data type nvarchar to bigint.
Я подозреваю, что это связано с LEFT JOIN я использую , Я просто пытаюсь получить поле Label из этой таблицы, ничего больше.
LEFT JOIN [taxonomies_taxonomy_entry]
ON [era_account_details].[sector] = [taxonomies_taxonomy_entry].[taxonomyentryid]
[taxonomies_taxonomy_entry].[label] AS [Industry]
Я пытаюсь выбрать поле метки, которое является полем nvarchar.
ЛЕВАЯ РЕГИСТРИРУЙТЕСЬ использования:..
[era_account_details] [сектора] = NVARCHAR
[taxonomies_taxonomy_entry] [taxonomyentryid] = BigInt
Любые советы?
Большое спасибо,
Почему они разные типы? – Caramiriel
Я понятия не имею; Я не проектировал базу данных :( – Justin
Вам придется преобразовать один тип в другой с помощью 'CAST' или' CONVERT'. Это не позволит оптимизатору использовать какие-либо индексы. Это будет * медленный * запрос. Если 'sector' должен содержать * только * целочисленные значения (и не содержит никакого мусора), вы можете преобразовать его в' bigint'. Другой вариант - добавить индексированный столбец 'nvarchar' в' taxonomies_taxonomy_entry' с помощью строковое представление идентификатора. Все еще уродливо, но вам не нужно обновлять существующие данные. –