【发布时间】:2014-04-29 15:03:49
【问题描述】:
我有一个表t1,其中包含name、code1、code2、...、code20等列
比如说,有 100K 行。
我有另一个查找表t2,其中有一列code;它有 10k 行,每行都有一个代码。所以,这个 1 列表中总共有 10K 个代码。
我需要从任何列中过滤掉t1 中具有t2 代码的所有行,即列code1 到code20。换句话说,在t1 的每一行中,一旦一列有t2 中的代码之一,就应该捕获它。
有没有简单的方法来做到这一点?非常感谢!
【问题讨论】:
-
这是一个非常时髦的数据库设计。您是否可以稍微更改架构?
-
如果您有适当的数据库设计,将是一种简单的方法 - 例如如果您已通过 1:n 关系将
t1链接到代码列表(而不是Code1...Code20在您的t1表中)。为什么这个搞砸了设计,没有简单的方法.....
标签: sql sql-server filter