1

LIKE を挿入し、coldfusion を使用したクエリでパラメーター内にワイルドカードを使用するのに少し問題があります。現在動作しているものは次のとおりです。

<cfquery name="sample" datasource="database"><!---Take the query here--->
    SELECT * <!---select all--->
    FROM table <!---from the table "table"
    WHERE 
    <cfloop from="1" to="#listLen(selectList1)#" index="i">
        #ListGetAt(selectList1, i)# = <cfqueryparam cfsqltype="cf_sql_varchar" value="#ListGetAt(selectList2,i)#" /> <!---
                                                    search column name = query parameter

                                                    using the same index in both lists
                                                    (selectList1) (selectList2) --->
    <cfif i neq listLen(selectList1)>AND</cfif> <!---append an "AND" if we are on any but
                                                the very last element of the list (in that
                                                case we don't need an "AND"--->
    </cfloop>
</cfquery>

私の目標は、そのようにパラメーターを入力できる場所にコードを取得することです(ただし、現在は機能していません-エラー読み取りはクエリを実行できません)

<cfquery name="sample" datasource="database"><!---Take the query here--->
    SELECT * <!---select all--->
    FROM table <!---from the table "table"
    WHERE 
    <cfloop from="1" to="#listLen(selectList1)#" index="i">
        #ListGetAt(selectList1, i)# LIKE <cfqueryparam cfsqltype="cf_sql_varchar" value="%#ListGetAt(selectList2,i)#%" /> <!---
                                                    search column name = query parameter

                                                    using the same index in both lists
                                                    (selectList1) (selectList2) --->
    <cfif i neq listLen(selectList1)>AND</cfif> <!---append an "AND" if we are on any but
                                                the very last element of the list (in that
                                                case we don't need an "AND"--->
    </cfloop>
</cfquery>
4

1 に答える 1