SQL 쿼리를 사용하여 데이터베이스에서 동일한 열을 필터링합니다.

SQL, MySQL 또는 MariaDB 데이터베이스 테이블의 열을 기준으로 행을 필터링하는 방법을 찾고 있나요? 실행할 쿼리를 찾고 계신가요?

최근에 데이터베이스 테이블에서 두 열의 값이 동일한 행만 필터링하여 표시해야 하는 상황이 있었습니다. 몇 시간 동안 검색한 후 간단한 해결책을 찾아서 여기에 공유하고 있습니다.

나는 프로그래머가 아니며, 이런 팁을 찾는 대부분의 사람들도 코드에 대해 많은 이해가 없다고 생각합니다.

Navicat 프로그램을 사용하여 데이터베이스를 편집하는 것이 일반적이며, 이 프로그램은 Microsoft Excel이나 Apple Numbers와 같이 행과 열을 자유롭게 편집할 수 있을 뿐 아니라 매우 빠르고 실용적입니다.

대부분의 사람들은 웹 사이트의 데이터베이스를 관리하기 위해 PhpmyAdmin을 사용합니다. 두 가지 모두 SQL 또는 쿼리 탭을 통해 스크립트를 실행할 수 있습니다.

SQL 쿼리를 사용하여 필터링하기

데이터베이스 전문가는 아니기 때문에 쿼리 코드를 사용하여 필터링된 테이블을 표시할 수 있다는 것을 몰랐었지만 다행히 발견하게 되었습니다.

데이터베이스에서 내 사용은 전적으로 행을 삭제하고, 텍스트를 검색하며, Search and Replace를 사용하는 것에만 국한되어 있습니다. SQL 코드가 매우 유용하다는 것을 전혀 몰랐습니다.

저는 개인적으로 이러한 코드를 사용하여 Translatepress의 데이터베이스 테이블에서 번역 오류를 확인하고 번역되지 않은 항목을 찾았습니다.

Filtrar por colunas idênticas em Bancos de Dado com SQL Query - sql filtro navicat

SQL 쿼리 코드

아래 코드는 다음과 같은 용도에 유용합니다:

  • 다른 열의 같은 행을 찾다;
  • 다른 행에서 다른 열 찾기;
  • 두 열에서 동일한 콘텐츠를 찾습니다;
SELECT * FROM `databasename`.`tablename` WHERE colum01 = colum02 ORDER BY `id` LIMIT 500 OFFSET 0; 

방금 본 코드는 WHERE colum01 = colum02를 사용하여 두 열에서 동일한 결과를 가진 행을 표시합니다. 원하는 경우 코드를 더 많은 열로 확장할 수 있습니다.

원하는 텍스트를 찾기 위해 기존 필터를 추가하고 싶다면, 아래 코드처럼 ORDER BY 이전에 AND를 추가하여 스크립트를 확장할 수 있습니다:

SELECT * FROM `databasename`.`tablename` WHERE colum01 = colum02 AND (`colum01` LIKE '%text%') ORDER BY `id` LIMIT 500 OFFSET 0; 

AND 이후에 괄호 안에 코드가 있어 텍스트를 01열에서만 필터링합니다. 필터링된 값을 포함하는 행을 찾기 위해 LIKE를 사용하거나 값을 포함하지 않는 행을 찾기 위해 NOT LIKE를 사용합니다.

O 스크립트 pode ser 더 확장되어 AND 및 기타 코드를 사용합니다. 이제 끝내기 위해 다른 코드를 표시할 것입니다. 값이 동일한 행을 표시하는 대신, 값이 다른 행을 표시합니다.

SELECT * FROM `databasename`.`tablename` WHERE colum01 != colum02 ORDER BY `id` LIMIT 500 OFFSET 0; 

이 코드를 통해 동일하거나 서로 다른 값을 가진 행을 전통적인 LIKE 및 NOT LIKE 필터를 사용하여 실제로 필터링하고 검색하는 데 도움이 되길 바랍니다.