MySQL SELECT 문: Null이 아닌 데이터 검색
이 가이드에서는 SELECT
문을 사용하여 MySQL 데이터베이스 테이블에서 null이 아닌 값만 효율적으로 검색하는 방법을 보여줍니다. 가장 간단하고 일반적인 방법은 IS NOT NULL
조건
방법 1: IS NOT NULL 사용
IS NOT NULL
절은 지정된 열에 NULL
값이 포함된 행을 직접 필터링합니다.
예:
<code class="language-sql">SELECT * FROM your_table WHERE your_column IS NOT NULL;</code>
방법 2: NOT 및 Null-Safe 동등 연산자 사용
MySQL은 NOT
연산자와 null 안전 동등 연산자(<=>
)를 사용하는 비표준 접근 방식을 지원합니다. 기능적이지만 IS NOT NULL
은 일반적으로 더 나은 가독성과 SQL 표준 준수를 위해 선호됩니다.
<code class="language-sql">SELECT * FROM your_table WHERE NOT (your_column <=> NULL);</code>
방법 3: 여러 열에 대한 UNION ALL
여러 열이 있는 테이블의 경우 UNION ALL
문을 사용하면 각 열에서 Null이 아닌 값을 개별적으로 검색할 수 있습니다. 이 방법은 단일 쿼리 내의 각 열에 IS NOT NULL
을 사용하는 것보다 효율성이 떨어지지만 특정 시나리오에서는 유용할 수 있습니다.
<code class="language-sql">SELECT col1 AS value FROM your_table WHERE col1 IS NOT NULL UNION ALL SELECT col2 FROM your_table WHERE col2 IS NOT NULL -- Add more UNION ALL clauses for additional columns</code>
방법 4: CROSS JOIN 및 HAVING을 사용한 CASE 문
더 복잡하지만 잠재적으로 유용한 접근 방식은 CASE
문, CROSS JOIN
및 HAVING
절을 사용하는 것입니다. 이 방법은 일반적으로 간단한 방법보다 효율성이 떨어지지만 대체 솔루션을 제공합니다.
<code class="language-sql">SELECT CASE idx WHEN 1 THEN col1 WHEN 2 THEN col2 END AS value FROM your_table CROSS JOIN ( SELECT 1 AS idx UNION ALL SELECT 2 ) t HAVING value IS NOT NULL;</code>
your_table
및 your_column
(또는 col1
, col2
등)을 실제 테이블 및 열 이름으로 바꿔야 합니다. IS NOT NULL
방법은 일반적으로 단순성과 효율성 때문에 권장됩니다.
위 내용은 SELECT 문을 사용하여 MySQL에서 Null이 아닌 값만 검색하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!