2009-03-21 3 views
7

SQLlite에 데이터베이스가 있는데 알파벳순으로 테이블을 정렬하고 싶습니다. 내가 어떻게 해? SQLite 만 사용하여 항목을 정렬하는 방법이 있습니까? 아니면 먼저 배열에 테이블을 읽고 정렬 한 다음 나중에 데이터베이스에 씁니다.SQLite - 테이블 정렬

내 쿼리는 다음과 같습니다. "SELECT 항목의 SELECT 항목 WHERE id =?" 한 번에 하나의 항목 만 가져 오려면이 명령문을 사용하여 테이블에서 데이터를 가져와야합니다.

미리 감사드립니다. 일리아.

답변

13
'Select name from table order by name asc' 

'오름차순'은 알파벳 순서로 텍스트 필드를 제공하고, 반대로 'desc'는 역순으로 사용자에게 제공합니다.

편집 : 일반적으로 데이터베이스에 정렬을 허용해야합니다. 아래 게시물은 거의 틀림없이 거의 동일합니다. 당신은 도움이 될 수 :

PHP/SQL: ORDER BY or sort($array)?

+0

감사합니다. 도움이됩니다. 그러나 정렬 후 각 행에 새 ID를 할당하려면 어떻게해야합니까? 그래서 그 변화가 저의 테이블에 나타날 것입니다. ID = 0 인 항목을 가져 오려면 A부터 시작하는 단어를 나에게 줄 것입니다. –

+0

@Ilya : ID 키는 행 번호가 아닙니다. 그들은 고유해야 할 필요가 있지만 어떤 순서로도 (연속적으로) 존재하지는 않습니다. 'name' 컬럼을 기반으로 정렬하고 ID 값을 행을 참조하는 방법으로 만 사용하십시오. –

+0

첫 번째 (알파벳순) 항목에 가장 낮은 ID 번호가 할당되도록 데이터를 알파벳 순으로 재정렬 하시겠습니까? 새 표에 삽입 한 다음 이전 표를 삭제할 수 있습니다 (예 : SELECT 이름 INTO 테이블 2 FROM 테이블 이름의 오름차순 asc – karim79

0

는 대소 문자 구분없이 또는 당신이 당신의 sqlite가에 정렬을 추가 할 필요가 특정 로케일 (영어가 아닌)로 테이블을 정렬합니다. Here 어떻게 그것을 수행하는 예제입니다.

2

SQL 데이터베이스 테이블의 데이터 순서 또는 order by 절을 포함하지 않는 쿼리를 사용하여 검색된 데이터 순서가 정의되어 있지 않다는 점도 강조해야합니다.

실제로 주문이없는 표를 곧바로 읽는 것은 고정 된 순서로 데이터를 검색하며 종종 삽입 순서입니다. 그러나 이것에 의존하는 것은 항상입니다.