如何在 SQL 查询中插入空白列?

How to insert a blank column in a SQL query?

这是我目前通过 Excel 的 Invantive Control 使用的 SQL 代码,与我们的 Exact 在线数据库链接。

正如您在代码中看到的,在第二行 select case 的前面,我想输入 4 个空白列。现在的编码方式当然行不通,但这只是一个尝试。 :)

<pre>select  date
,       InvoiceNumber
,       AccountCode
,       AccountName
,       YourRef
,       GLAccountCode
,       GLAccountDescription
,       CostUnit
,       CostUnitDescription
,       ProjectCode
,       ProjectDescription
,       Description
,       AmountDC
,       AmountFC
,       CostCenter
,       FinancialPeriod
,       JournalDescription
,       substr(GLAccountCode, 1, 1) type
,       case
        when substr(GLAccountCode, 1, 1) = '6'
        then 'KOST'
        else 'OPBRENGST'
        end
        pl
<<HERE>>
,       case
        when substr(GLAccountCode, 1, 1) = '6'
        then AmountDC
        else 0
        end
        debet
,       case
        when substr(GLAccountCode, 1, 1) = '6'
        then 0
        else AmountDC
        end
        credit
,       AmountDC dc2
from    TransactionLines
where   FinancialYear = 2017 and JournalCode >='600'
order   by date<code>

我的问题的第二部分:我可以通过模型编辑器将 excel 公式添加到这些空白列中吗? 这可能很有用,因此每次与 Exact Online 同步时,这些公式不会被删除,而是与数据一起刷新。

在 Invantive Control 上 运行 时,您需要同时更改 SQL 并确保您的布局允许额外的列。

首先插入:

,     null COLUMNNAME1
,     null COLUMNNAME2
,     null COLUMNNAME3
,     null COLUMNNAME4

列列表中您需要的位置。

然后在模型编辑器中选择 'Refresh' 字段选项卡。

在 'Synchronize' 按钮的应用程序中,您会看到必要的列向右移动。但是...

当您在块的模型编辑器的 Presentation 选项卡中定义了 Excel 范围时,您将需要调整 Excel 范围的大小以容纳 4 个新列。例如,通过更改布局范围以包含 4 个新列。