我正在考虑将多个值传递给查询以检索仅匹配在多列中传递的所有值的完全匹配的行。
例如,传递:“法国”,“特殊”,这将只返回ID 3.如果只传递“法国”,它将返回ID 1和3.如果我通过“法国”,“特殊” ,“神圣的”它将返回空白。
这是为了说明的目的,实际数据可能有更多的列要询问,还有更多的术语传递给它。
+----------------+-------------+---------+--+
| Name | Author | Country |ID |
+----------------+-------------+---------+--+
| France | M. Charmers | UK | 1 |
| Worlds Apart | D. Ramson | Germany | 2 |
| Special | R. Magee | France | 3 |
| Sacred Special | D. Monster | Spain | 4 |
+----------------+-------------+---------+--+
我正在查询相当大的数据库,并且正在寻找用于查询此数据的最便宜的方法。使用WHERE IN子句的集合或构建子查询来查询是否合理?