String of strings

I got an array of id’s :

ids = [22443, 22468, 22371, 22218, 22472, 22377, 22245]

I would like to get a string of strings (to be used in SQL WHERE…IN
clause

" ‘22443’ , ’ 22468’ , ’ 22371’ , ’ 22218’ , ‘22472’ , ‘22377’ , ‘22245’
"

If a use ids.join(’,’), I get
“22443,22468,22371,22218,22472,22377,22245” which is obviously not
useful for SQL…

is there any shorcuts or should I concatenate each element ?

thanks

joss

On 12/19/06, Josselin [email protected] wrote:

useful for SQL…
ids.map {|i| “‘#{i}’”}.join(" ,")

martin

On 2006-12-19 09:29:38 +0100, “Martin DeMello” [email protected]
said:

“22443,22468,22371,22218,22472,22377,22245” which is obviously not
useful for SQL…

ids.map {|i| “‘#{i}’”}.join(" ,")

martin

thanks Martin… I realize that the error I got was not due to
integers list , “22443, 22468, 22371, 22218, 22472, 22377, 22245” is
accepted… so the join(‘,’) is ok…
but the list is too long … for a select statement… (I can have 50
numbers or more…) there is a characters limit to the select

joss

On 12/19/06, Martin DeMello [email protected] wrote:

‘22245’ "

If a use ids.join(‘,’), I get
“22443,22468,22371,22218,22472,22377,22245” which is obviously not
useful for SQL…

ids.map {|i| “‘#{i}’”}.join(" ,")

martin

“'#{ids.join(”‘,’“)}'”

Johan

ids = [22443, 22468, 22371, 22218, 22472, 22377, 22245]
“IN (’”+ids.join("’, ‘")+"’)"

Shiwei
(The views expressed are my own and not necessarily those of Oracle and
its affiliates.)