mysql多个字段in查询

28 阅读1分钟
	   * 
FROM
	   test 
WHERE
	   ( `a` = 1 AND `b` = 2 ) 
	OR  ( `a` = 3 AND `b` = 4 ) 
	OR  ( `a` = 5 AND `b` = 6 ) 
	OR  ( `a` = 9 AND `b` = 10 );
 

#优化后: 
SELECT
   * 
FROM
	   test 
WHERE
	   ( a, b ) IN (( 1, 2 ),( 3, 4 ),( 5, 6 ),( 9, 10 ));
 

#或者
SELECT
 * 
FROM
	   test 
WHERE
	   ( a, b ) IN (SELECT a, b FROM test2);