如何从查询中删除特定列 ColdFusion 11

Dro*_*nia 3 sql coldfusion coldfusion-11

我想从查询中删除特定列。我已经尝试过,queryDeleteColumn但是我收到错误消息:

变量 QUERYDELETECOLUMN 未定义”。

这是一个代码片段(ColdFusion 11.0.18):

<cfquery name="qData" datasource="datasource">
    SELECT
        *
    FROM
        table
</cfquery>
<cfset qData = QueryDeleteColumn(qData,"columnName")
Run Code Online (Sandbox Code Playgroud)

RRK*_*RRK 5

该功能queryDeleteColumn是在 ColdFusion 2018 中添加的。因此它不会在 ColdFusion 11 中可用。

您可以对初始结果进行查询,如下所示。

<cfquery name="qData" datasource="datasource">
    SELECT
        *
    FROM
        table
</cfquery>

<cfif listFindNoCase(test.columnList, 'columnName')>
    <cfquery name="qData" dbtype="query">
        SELECT
          #listDeleteAt(test.columnList, listFindNoCase(test.columnList, 'columnName'))#
        FROM qData
    </cfquery>
</cfif>
Run Code Online (Sandbox Code Playgroud)

  • @DropMania虽然这可能有效,但我仍然认为没有必要这样做。对于仅通过查询所需列而不是“*”来简单得多的操作来说,这最终将带来巨大的开销。 (2认同)