[SQL] MySQL의 쿼리 날짜에 타임 스탬프로 변환
SQLMySQL의 쿼리 날짜에 타임 스탬프로 변환
나는 날짜로 MySQL의에서 타임 스탬프를 변환 할.
나는 YYYY-MM-DD로 텍스트 파일로 user.registration 필드를 포맷하고 싶습니다.
여기 내 SQL은 다음과 같습니다
$sql = requestSQL("SELECT user.email,
info.name,
FROM_UNIXTIME(user.registration),
info.news
FROM user, info
WHERE user.id = info.id ", "export members");
또한 날짜 변환을 시도했다 :
DATE_FORMAT(user.registration, '%d/%m/%Y')
DATE(user.registration)
텍스트 파일을 작성하기 전에 그 결과를 에코 내가 얻을 :
어떻게 날짜에 해당 필드를 변환 할 수 있습니까?
해결법
-
==============================
1.
DATE_FORMAT(FROM_UNIXTIME(`user.registration`), '%e %b %Y') AS 'date_formatted'
-
==============================
2.정수 타임 스탬프 테이블을 확인 :
정수 타임 스탬프 테이블을 확인 :
mysql> create table foo(id INT, mytimestamp INT(11)); Query OK, 0 rows affected (0.02 sec)
일부 값을 삽입
mysql> insert into foo values(1, 1381262848); Query OK, 1 row affected (0.01 sec)
구경하다
mysql> select * from foo; +------+-------------+ | id | mytimestamp | +------+-------------+ | 1 | 1381262848 | +------+-------------+ 1 row in set (0.00 sec)
타임 스탬프에 수를 변환 :
mysql> select id, from_unixtime(mytimestamp) from foo; +------+----------------------------+ | id | from_unixtime(mytimestamp) | +------+----------------------------+ | 1 | 2013-10-08 16:07:28 | +------+----------------------------+ 1 row in set (0.00 sec)
읽을 수있는 형식으로 변환 :
mysql> select id, from_unixtime(mytimestamp, '%Y %D %M %H:%i:%s') from foo; +------+-------------------------------------------------+ | id | from_unixtime(mytimestamp, '%Y %D %M %H:%i:%s') | +------+-------------------------------------------------+ | 1 | 2013 8th October 04:07:28 | +------+-------------------------------------------------+ 1 row in set (0.00 sec)
-
==============================
3.단지 날짜를 얻으려면 캐스팅 할 수 있습니다
단지 날짜를 얻으려면 캐스팅 할 수 있습니다
cast(user.registration as date)
특정 형식을 사용 DATE_FORMAT를 얻을 수 있습니다
date_format(registration, '%Y-%m-%d')
-
==============================
4.등록 필드가 참으로 TIMESTAMP 유형의 경우, 당신은 할 수 있어야한다 :
등록 필드가 참으로 TIMESTAMP 유형의 경우, 당신은 할 수 있어야한다 :
$sql = "SELECT user.email, info.name, DATE(user.registration), info.news FROM user, info WHERE user.id = info.id ";
상기 등록 YYYY-MM-DD로 표시되어야
-
==============================
5.그냥 mysql을의 DATE 함수를 사용합니다 :
그냥 mysql을의 DATE 함수를 사용합니다 :
mysql> select DATE(mytimestamp) from foo;
-
==============================
6.당신은 지금까지 타임 스탬프를 변환해야합니다.
당신은 지금까지 타임 스탬프를 변환해야합니다.
select FROM_UNIXTIME(user.registration, '%Y-%m-%d %H:%i:%s') AS 'date_formatted'
FROM_UNIXTIME
-
==============================
7.당신이 당신의 출력에 쿼리를 얻고있는 경우에 당신은 우리에게 코드를 실제로 에코 결과를 표시해야합니다. 당신은 requeteSQL를 호출하는 코드를 게시 할 수 있습니까?
당신이 당신의 출력에 쿼리를 얻고있는 경우에 당신은 우리에게 코드를 실제로 에코 결과를 표시해야합니다. 당신은 requeteSQL를 호출하는 코드를 게시 할 수 있습니까?
당신은 PHP에서 작은 따옴표를 사용하는 경우 예를 들어, 변수 이름이 아닌 값을 출력합니다
echo 'foo is $foo'; // foo is $foo
이것이 바로 문제처럼 소리 나는 이것이 원인 긍정적입니다.
또한, 그것은 당신에게 더 많은 정보를 제공하여 도움이 있는지 확인하기 위해 @ 기호를 제거하려고합니다.
그래서
$SQL_result = @mysql_query($SQL_requete); // run the query
가된다
$SQL_result = mysql_query($SQL_requete); // run the query
쿼리가 오류를 던지고 경우이 오류 억제를 중지합니다.
-
==============================
8.여기에 설명 된대로 '날짜'기능을했다 :
여기에 설명 된대로 '날짜'기능을했다 :
(SELECT count(*) as the-counts,(date(timestamp)) as the-timestamps FROM `user_data` WHERE 1 group BY the-timestamps)
-
==============================
9.FROM_UNIXTIME (UNIX_TIMESTAMP, [포맷]) 당신이 필요로하는 모든 것입니다
FROM_UNIXTIME (UNIX_TIMESTAMP, [포맷]) 당신이 필요로하는 모든 것입니다
FROM_UNIXTIME(user.registration, '%Y-%m-%d') AS 'date_formatted'
FROM_UNIXTIME는 숫자 값을 취득하고 날짜 오브젝트로 변환 형식 문자열을 주어진 경우 또는, 그것은 문자열로 반환합니다.
오래된 솔루션은 초기 날짜 객체를 얻고 두 번째 기능 DATE_FORMAT 그것을 형식을 없었다 ... 그러나 이것은 더 이상 필요
-
==============================
10.시험:
시험:
SELECT strftime("%Y-%d-%m", col_name, 'unixepoch') AS col_name
그것은 YYYY-MM-DD 문자열을 밀리 초 단위로 타임 스탬프 포맷합니다.
from https://stackoverflow.com/questions/9251561/convert-timestamp-to-date-in-mysql-query by cc-by-sa and MIT license
'SQL' 카테고리의 다른 글
[SQL] 합니까 외래 키 쿼리 성능을 향상? (0) | 2020.04.03 |
---|---|
[SQL] MySQL의에서 다음 자동 증가 ID를 얻는 방법 (0) | 2020.04.03 |
[SQL] 왼쪽 외부 오라클 11g에서 + 기호를 사용하여 가입 (0) | 2020.04.03 |
[SQL] 어떻게 변수를 선언하고 동일한 오라클 SQL 스크립트에서 사용하는 방법? (0) | 2020.04.03 |
[SQL] 날짜 데이터 형식에 대한 기본 값으로 () NOW 설정? (0) | 2020.04.03 |