SQL Заменить минус число скобками

Вы не согласны с нашим чатом. Макросы данных даже запускаются за пределами MS Access, если они используют код в MS Access, этого не может быть. Они привязаны к движку базы данных, который ничего не знает о интерфейсе Access.

Вы можете запускать запросы из макроса данных AFAIK, и можно создать запрос для записи в файл *, но вы не можете запустить VBA.

* Я просмотрел это немного больше, и я нахожу: «Запросы, содержащие связанные таблицы, запросы действий и ссылки на базы данных, не допускаются в макросах данных».

1
задан Salman A 16 January 2019 в 09:51
поделиться

2 ответа

Следующее выражение должно работать в большинстве случаев:

SELECT num, CASE
    WHEN num < 0 THEN '(' + CAST(-num AS VARCHAR(11)) + ')'
    ELSE CAST(num AS VARCHAR(11))
END AS frmtd
FROM (
    SELECT    0 AS num UNION ALL
    SELECT  945        UNION ALL
    SELECT -945
) tests
0
ответ дан Salman A 16 January 2019 в 09:51
поделиться

Вы также можете попробовать использовать функцию Replace в Sql Server, как показано ниже.

Когда значение находится в (-) ве.

Select CAST(REPLACE(CAST(-945 as Varchar(4)), '-', '') as Int)

Когда значение уже находится в (+) ве.

Select CAST(REPLACE(CAST(945 as Varchar(4)), '-', '') as Int)

Выход в обоих случаях будет: 945

0
ответ дан Suraj Kumar 16 January 2019 в 09:51
поделиться
Другие вопросы по тегам:

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