SELECT * FROM tbl1 WHERE col IN (?)
But the prepared statement will pass me the item The list is treated as a single item. How can I do this?
I am using sqlite, if it makes any difference.
You have to do it in two steps:
>Use one’? ‘Create each value in the SQL array or list.
>Iterate through the array or list and bind each value.
This is true regardless of the database.
You don’t have Explain whether sub-SELECT can be a better solution, but if the value in question is available in another table, maybe it can make it work.
I have a database , The user can search for records containing a list of one or more items. I am using IN to search, but I cannot use IN to process prepared statements. This is what I have tried:
SELECT * FROM tbl1 WHERE col IN (?)
But the prepared statement treats the list of items I pass as a single item. How can I do this?
I am using sqlite, if it makes any difference.
You can’t do this because you can’t bind to an array.
You have to do it in two steps:
>Use one’? ‘Create each value in the SQL array or list.
>Iterate through the array or list and bind each value.
This is true regardless of the database.
You don’t have Explain whether sub-SELECT can be a better solution, but if the value in question is available in another table, maybe it can make it work.