2013-05-16 3 views
10

먼저 도움을 주셔서 감사합니다. 학습 SQL을 수행하므로 도움이 필요합니다.Sqlite : null/빈 문자열을 포함하는 행을 삭제하는 방법

특정 열의 일부 필드에 공백이 포함되지 않은 Sqlite 데이터베이스가 있습니다.

제발 어떻게 데이터베이스에서 아무것도 포함하지 않은 행 (또는 공백 문자열)을 삭제합니까?

도움 주셔서 감사합니다.

답변

25

이 시도 WHERE

DELETE FROM MY_TABLE 
WHERE MY_COLUMN IS NULL 
OR TRIM(MY_COLUMN) = '' 

이보기 빈 문자열로 축소되었습니다.

+0

도 작동하지 않습니다 .... 감사합니다 –

+0

테스트 데이터를 공유 할 수 있습니까? 그 SQLite 함께 나를 위해 잘 작동합니다. 물론 –

+0

. 하지만 나는 방화벽 뒤에 있기 때문에 이메일을 통해 DB를 보내야합니다. –

1

이 답변은 SQL 데이터베이스에 대해 작동합니다 단지 공백을 포함하는 문자열이되도록 trim()이 필요

DELETE FROM myTable WHERE myColumn IS NULL OR trim(myColumn) = ''; 

: 절 ​​working in SQLFiddle

+0

이의 "문자열을 검색하지 않습니다 ''와 같은 MY_COLUMN NULL IS MY_TABLE 에서 삭제 공백 ". –

+1

아니, 그냥 SQLite로 테스트했습니다. 공백 문자열은' '''과 일치하지 않습니다. –

+0

아니요, 작동하지 않습니다. 고마워. 어쨌든 –

3

이 시도 :

DELETE FROM tbl 
WHERE 
    (filed IS NULL OR filed = '') 

여러 칼럼 :

DELETE FROM tbl 
WHERE 
    (filed IS NULL OR filed = '') 
    AND (filed2 IS NULL OR filed2 = '') 
    AND (filed3 IS NULL OR filed2 = '') 
0

을 MY_COLUMN이 또는

관련 문제