Also muss ich Abfrage Spaltenwerte basierend auf einigen anderen Spaltenwerte ausgeben. Dafür habe ich mit cfloop jeden Wert aus meiner Abfrage-Spalte überprüft und dann die Werte gesetzt. Mein Code sieht wie folgt aus:ColdFusion-Abfrageausgabe?
<cfloop query="myQuery">
<cfif status EQ "ABC" OR status EQ "DEF">
<cfif trim(exitStatus) EQ ''>
<cfset col8val = #col8val#>
<cfelse>
<cfset col8val = #col8val# A>
</cfif>
</cfif>
</cfloop>
Also, was ich frage mich, sollte ich meine Ergebnisse an einem Ort zu speichern, verwenden, die Art und Weise habe ich nicht zu Schleife, ich will einfach nur nach dieser cfloop mein Ergebnis auf Dump über. Ich kann Array oder Struktur nicht verwenden, da beide zusätzliche Schleifen benötigen, um Ergebnisse zu erhalten. Ich habe auch versucht, dies in SQL zu tun, aber ich konnte zwei CASE-Anweisungen aus zwei verschiedenen Spalten nicht kombinieren. Wenn jemand mit diesem Problem helfen kann, lass es mich wissen.
'SELECT CASE WHEN Status = 'ABC' ODER Status = 'DEF' UND (exitStatus = '' ODER exitStatus IS NULL) THEN col8val SONST col8val + 'A'' So etwas sollte in SQL funktionieren. Eine weitere Möglichkeit, die Abfrage selbst zu aktualisieren. http://www.bennadel.com/blog/1708-ask-ben-updating-columns-in-a-existing-coldfusion-query-object.htm. Ich würde mir beides anschauen, bevor ich eine Menge Loops schreibe. – Leeish
Sobald Sie das Fallkonstrukt herausgefunden haben, können Sie jede Methode zeitlich festlegen. Während die Verwendung der Datenbank zum Anwenden Ihrer Logik die Notwendigkeit einer Schleife beseitigt, gibt es keine Garantie dafür, dass sie effizienter ist. –
@Leeish Warum nicht einfach eine Antwort geben? Ich sehe so viele Kommentare zu Fragen, die fast Antworten sind. –