我正在运行在Coldfusion8/MySQL 5.0.88
数据库上运行的应用程序。
该应用程序有一个搜索表单,用户可以使用它来搜索产品 ID。
现在我的 SQL 语句如下所示:
...
AND a.product_id LIKE <cfqueryparam value="%#form.s_product_id#%" cfsqltype="cf_sql_varchar">
用户通常会传入 a single id
or partial id
,所以我需要这对两者都有效:
123456 (full id)
123 (partial id)
但是,我还想让用户搜索多个 ID。所以用户可能会输入:
12345,233345,78876
问题:
我可以在提交表单之前清除空格,但我如何才能使我的 MySQL 搜索处理程序正确地将其识别为列表。如果我只是使用IN
而不是LIKE
我会丢失 partial_ID,不是吗?