Вставка десятичных полей SQL в EXCEL - PullRequest
0 голосов
/ 27 марта 2020

У меня проблема с форматами данных Excel и SQL.

У меня есть столбец в SQL, который имеет тип данных DECIMAL (18,0), и когда я пытаюсь вставить SQL результат в SQL .. последние 3 цифры результата sql заменяются на 0 в excel.

Пример

В SQL в наборе результатов есть столбец с именем идентификатор сеанса и имеет десятичные числа, такие как 119 597 417 242 309 670
329 621 151 450 1550 454
134 460 940 261 658 890

... но при вставке в Excel числа выглядят как

enter image description here

Я попытался изменить формат в EXCEL, чтобы вставить как текст, однако, весь формат набора результатов искажается (и только первый столбец вставляется правильно без нулей). Я не могу продолжать приводить все поля в SQL от десятичного до целого, так как полей слишком много.

Можете ли вы подсказать мне, что я могу сделать?

Ответы [ 2 ]

1 голос
/ 27 марта 2020

Числа c поля в Excel ограничены до 15 цифр точности.

В SQL Помощник в Инструменты / Параметры / Формат данных вы можете попросить, чтобы большие десятичные (и BIGINT) поля отображались в виде текста только для этого вида копирования / вставки. Или вы можете указать SQL Помощник для сохранения как или Экспорт в формат Excel.

Для других инструментов вы можете явно ФОРМАТИРОВАТЬ и ЗАПИСАТЬ данные в VARCHAR в вашем SELECT, чтобы они извлекались как текст.

0 голосов
/ 27 марта 2020

Несколько вещей, которые вы можете сделать. Я перечислю 4. Выберите то, что подходит вам больше всего.

  1. Сначала вставьте в текстовый редактор (например, блокнот), найдите / замените его и вставьте.
  2. Установите диапазон данных куда вы собираетесь вставить «текст», а затем вставить. После этого вы можете искать / заменять и менять на правильный формат.
  3. Измените региональные настройки на Windows, чтобы они соответствовали имеющимся у вас данным.
  4. Вы можете генерировать формулы из вашего запроса SQL вместо чисел с плавающей запятой. Так что сгенерируйте текст вроде =5/10 вместо 0.5 или 0,5. Excel подберет его правильно, независимо от ваших региональных настроек.
...