2014-09-03 1 views
0

시간은 hh : mm aa 형식으로 예 : 01:30 AM입니다.orderby하는 방법 sqlite에서 시간 데이터 형식?

테이블을 만드는 동안 데이터 유형을 TIME으로 지정합니다. 그러나 형식을 설정하는 방법은 없습니다. 기본적으로 HH : MM : SS 형식입니다. 따라서 AM/PM 값을 입력하는 동안 데이터베이스에 추가되지 않습니다.

TIME 데이터 유형 열을 사용하여 원하는 형식으로 내 시간을 저장하여 정렬을 더 쉽게 할 수있는 방법이 있습니까?

또한 TEXT 데이터 형식으로 시간을 절약 해 보았습니다. 나는 AM/PM의 substirng을 취하여 그것을 주문하고 문자열 정렬을한다. 그것의 문제는 12:30 PM이 정확하게 주문되지 않을 것입니다.

예 : 12.30 PM, 12.30 오전, 오후 2시 반은 오후

12.30 어떻게이 열을 주문할 수 있습니다 나는 이것에 대한 어떤 데이터 유형을 제공 할 수 있습니다, 12.30 AM, 오후 2시 반으로 주문할 수 있습니까?

+0

그래서 ** 24 시간 형식이 더 우수합니다 ** : 02:30 PM = 14 : 00 (12:30 이후). 그리고 12:30 AM은 '00 : 30'입니다. –

+1

그것은 먼저 트릭 타입의 데이터를 저장할 수 있습니다. TIME TYPE에서 데이터를 저장하기 전에, 단지 01:30 AM을 저장하기 만하면 01:30을 구문 분석하고 TIME TYPE에 저장하고 2:30 PM에 24HRS TIME 14:30 그것을 저장합니다. 그리고 나서 U가 SELECT * FROM 데이터 ORDER BY TO_TIME (시간)을 검색하고 다시 필요에 따라 다시 구문 분석하면 24 시간 형식을 사용하기에 더 편리합니다 ** –

+0

이 솔루션을 참조하십시오. - https://stackoverflow.com/a/45240886/4024250 –

답변

0

hh:mm:ss을 사용하여 데이터베이스에 값을 저장하십시오. (올바른 정렬 및 모두 built-in time functions에 의해 필요합니다.)

값을 표시하는 데 hh:mm aa 형식 (또는 다른 형식)을 사용하십시오. 사용자 로케일의 기본 형식을 알 수 없거나 사용자가 다른 시간 형식을 선택한 경우 어떤 형식 으로든 표시 할 수 있도록 시간 형식을 지정해야합니다.