【发布时间】:2020-02-25 10:09:20
【问题描述】:
我必须做一个非常简单的选择,只有参数改变。但是对于大量的关键字,我必须重复它。
即
SELECT url from mytable WHERE keyword like '%{key}%'
我可以使用
Select url from mytable where keyword in ('key1', 'key2'...)
但我需要知道哪个 url 与每个 keyword关联。似乎 MySQL 不支持 table parameter 并且执行相同的语句 20K 次非常慢。
什么解决方案适合这个任务?
【问题讨论】:
-
如果用在呢?
Select url from mytable where keyword in ('key1', 'key2'...) -
@PrakharLondhe:我会丢失有关哪个键与返回的 rurl 相关联的信息
-
也许......如果我写 Select keyword, url from mytable where keyword in ('key1', 'key2'...) 它会部分工作。但是如何管理类似“%key%”的列表?
-
":我会丢失有关哪个键与返回的 rurls 相关联的信息“-不。你会得到有限数量的 URL。您可以对它们进行后过滤以获取匹配的关键字。基本上选择 url 和关键字,然后在客户端再次过滤以找出哪个关键字被点击。
-
有没有其他的解决方案,比如之前创建一个临时表?
标签: c# mysql database query-parameters