Ok,
What worked was this:
<isNotEmpty prepend="AND" property="accountList">
<iterate open="(" close=")" conjunction="OR"
property="accountList">
UPPER(ACC_SHRT_NM + AF.ALT_ACC_ID) like
UPPER('%$accountList[]$%')
</iterate>
</isNotEmpty>
The only reason it was not working was an error on my part, where other
WHERE clauses were also being executed because of some other non-empty
lists (they had empty strings in them).
Thanks for the help everyone. Brad - i believe when you have a WHERE
clause already specified, you do not need to use "<dynamic>".
-Ayan
Brad Balmer <[EMAIL PROTECTED]>
03/06/2007 05:20 PM
Please respond to
[email protected]
To
[email protected]
cc
Subject
Re: SQL Map Problem - iterating through a list, using a like query
Could it be that you are missing the <dynamic> tag wrapped around the
<isNotEmpty> ?
[EMAIL PROTECTED] wrote:
Hi,
I am trying to do a select from a table, using dynamic sql like so:
SELECT *
FROM TABLE_NAME
WHERE STATUS = 'A'
<isNotEmpty prepend="AND" property="accountList">
<iterate open="(" close=")" conjunction="OR" property=
"accountList">
UPPER(ACC_SHRT_NM) like UPPER('%$accountList[]$%')
</iterate>
</isNotEmpty>
Basically I want this query to create a bunch of "like" clauses using the
elements of the List accountList.
For some reason this is not working - I get nothing returned.
Is this syntax correct?
-Ayan
This transmission may contain information that is privileged,
confidential, legally privileged, and/or exempt from disclosure
under applicable law. If you are not the intended recipient, you
are hereby notified that any disclosure, copying, distribution, or
use of the information contained herein (including any reliance
thereon) is STRICTLY PROHIBITED. Although this transmission and
any attachments are believed to be free of any virus or other
defect that might affect any computer system into which it is
received and opened, it is the responsibility of the recipient to
ensure that it is virus free and no responsibility is accepted by
JPMorgan Chase & Co., its subsidiaries and affiliates, as
applicable, for any loss or damage arising in any way from its use.
If you received this transmission in error, please immediately
contact the sender and destroy the material in its entirety,
whether in electronic or hard copy format. Thank you.