2011-12-18 2 views
0

열 ID가 2, 4, 6, 8, ..... 인 mysql 데이터베이스의 테이블에서 행을 검색하려면 누군가가 IN을 사용하지 않고 이러한 값을 검색 할 수있는 대체 방법. 나는 우리가 OR을 사용할 수 있다고 생각하지만 거기에 개미가 다른가?행 검색을 위해 mysql 쿼리에서 IN을 사용하는 대신

+1

왜 'IN'을 사용하지 않으시겠습니까? –

+0

방금 ​​대안을 찾고 있습니다! 그리고 다른 방법들 사이에 어떤 장단점이 있는지보기 위해서. – ssn

+0

아, 그럼 당신은 짝수만으로 행을 얻고 싶습니다. 내가 참조. –

답변

3

다양한 방법이 있습니다. 일부 제안 :

간단히
  1. : 일부 SQL 구현에 SELECT ... WHERE mod(id, 2) = 0
    당신은 모듈로 연산자 % 대신 mod()를 사용할 수 있습니다. 조건부

  2. : SELECT CASE mod(id, 2) WHEN 0 THEN ... ELSE ...
    Explanation of SELECT...CASE statement.
    Good example.

  3. 정규 표현식 : SELECT ... WHERE id LIKE '%[02468]'
    은 0, 2, 4, 6 또는 8도 사람들로 끝나는 경우에만이 ID를 가진 레코드를 반환합니다.

+0

감사합니다! 좋은 대답! – ssn

관련 문제