2017-04-25 8 views
0

私のコードでは、クエリからコードと名前を切り替えなければならないことがよくあります。ここでは次のようになります。私は名前を必要とコード、またはその逆になります後のページでcoldfusionでqoqより短い方法がありますか

<cfquery name="AllLocations" > 
    Select Name, Code From Locations 
</cfquery> 

<cfquery name="ThisLocation" dbtype="query > 
    Select Name From Locations where Code = '#Code#' 
</cfquery> 

<cfoutput>#ThisLocation.Name#</cfoutput> 

はIドンので、これを行うための短い方法はあります毎回qoqする必要がありますか?

+0

qのqをいつ、なぜ行うのか、テーブル全体が本当に始まる必要があるかどうかは分かりません。 –

+0

私はcoldfusionがすぐに行と列を取得するために使うことができる省略形を持っているかどうか聞いています。 'AllLocations ["#Name# "]。Code" –

+0

のようなものですが、何をしようとしているのですか?そしてもっと重要なのは、*なぜ*どのオプションが利用可能か、 。 – Leigh

答えて

1

あなたはこのような何かを行うことができます:

<cfoutput> 
#allLocations.name[listfind(valuelist(allLocations.code), code)]# 
</cfoutput> 

編集は、パフォーマンスについてのコメントを考えると、ここで 開始し、私は、配列がリストよりも高速であることを理解しています。

<cfoutput> 
#allLocations.name[arrayFind(allLocations['code'], code)]# 
</cfoutput> 
+0

'listFind()の2番目の引数がありません – Beginner

+0

私はそれをたくさん行います。私は実際にコードを実行しようとするため、通常私は気づき、失敗します。 –

+0

これは私が探していたものです。私はそれが(少なくとも読むために)どんなに簡単であるか分からないが、それはうまくいく。 –

関連する問題