2015-04-25 53 views
0

我有Ñ列的表這樣如何比較具有多個值的多個表列?


塔1 |第2列|第3列| ...柱Ñ


我有Ñ值這樣


值1,值2,值3,...的值Ñ


我想比較這些n的值與我的表的N列。我能做到這一點的方法之一是:

Select * from table where 

column 1 IN (value 1 , value 2 , value 3 , ...value n) 
|| 
column 2 IN (value 1 , value 2 , value 3 , ...value n) 
|| 
column 3 IN (value 1 , value 2 , value 3 , ...value n) 
|| 
. 
. 
. 
column n IN (value1 , value1 , value1 , ...value n) 

這是最最快辦法做到這一點?

+0

見正常化 – Strawberry

回答

2

在你的情況沒有。

我建議更改數據庫的結構,如果可能的話:

表 ID |列| value_of_column |

日期例如:

1 | column_1 | zzz 
2 | colums_2 | yyyy 
3 | colums_1 | yyyy 
4 | colums_5 | yyyy 
.... 

,然後查詢:

select * from table where value_of_column in (value......)