2010-07-14 5 views
0

sqlite 테이블로 가져온 매우 큰 CSV 파일이 있습니다. 50 개 이상의 열이 있고 모든 열이 null 인 모든 행을 찾고 싶습니다. 이것은 가능한가? 나는 where 절에서 50 개의 다른 컬럼 모두를 작성하는 시간을 절약하려고 노력하고있다. 감사.sqlite : 테이블에서 ANY 열이 null 인 모든 행을 찾는 방법?

+1

그룹을 반복하는 것처럼 냄새가납니다. http://en.wikipedia.org/wiki/1NF를 참조하십시오. –

답변

0

재미있는 질문이지만 CSV에서 적절한 스크립트로 복사/붙여 넣기 된 헤더 행을 변환하는 빠른 스크립트를 작성하는 것이 더 빠릅니다. 없음 DESCRIBE TABLE를 사용하여 커서 또는 중간 기술이없는 LINQPad (C 번호)의 작동 예를 들어

void Main() 
{ 
string input = "adasda|sadasd|adasd|"; 
char delim = '|'; 
StringBuilder sql = new StringBuilder(); 
sql.AppendLine("SELECT * FROM table WHERE "); 
foreach (string s in input.Split(delim)) 
{ 
    if (!String.IsNullOrEmpty(s)) 
    sql.Append(s).AppendLine(" IS NULL OR "); 
} 
sql.ToString().Trim('\r', '\n', 'O', 'R',' ').Dump(); 
} 
0

호.

가장 좋은 방법은 열 DEFAULT NULL이고 데이터를 다시 가져 오는 것입니다. 그러나 CSV 가져 오기 및 열 유형에 따라 여전히 열에 빈 값이 표시 될 수 있습니다.

하지만, SQL 명령을 복사하여 붙여 넣기 만하면됩니다. 스크립트는 재사용 할 수 있습니다.

관련 문제