Есть ли способ применить поле nvarchar в инструкции select на основе того, является ли оно числовым или нет. В настоящее время у меня есть этот код, но по какой-то причине он пытается преобразовать одно из числовых значений.SQL Бросок в select, основанный на значении
SELECT id,
CASE WHEN ISNUMERIC(field) = 1 THEN CAST(field AS INT) ELSE CAST(field AS NVARCHAR(10)) END AS [fieldName]
FROM table1
В столбце SQL имеется тип данных. Вы не можете смешивать типы данных в одном столбце. Может быть, вы можете использовать столбец SQL_VARIANT (просто думать) – CrApHeR
Ответ, к сожалению, нет. В запросе возвращается один столбец с одним типом данных. Просить SQL Server вернуть два разных типа данных для одного столбца - это попросить мотоцикл с полным приводом. – AHiggins
Существуют альтернативы, такие как преобразование значения в число в определенном формате, а затем преобразование его в значение nvarchar - можете ли вы описать, что именно вы пытаетесь выполнить здесь? Может быть, есть еще один способ, которым мы могли бы подойти к проблеме. – AHiggins