2013-04-17 1 views
2

created_date라는 테이블에 필드가 있습니다. 날짜 형식은 2010-02-28입니다. 난 그냥 mysql 문을 할 수있는 것이 궁금해, 전체 날짜 대신 하루를 반환합니다. 예. 28전체 날짜가 아닌 SQL 추가 일

SELECT 
day(created_date) 
FROM 
table 

위의 쿼리는 오류가 발생합니다. 비슷한 방법으로 처리 할 수 ​​있습니까?

환호

+0

를 사용하여 날짜를 경우에만 필수 필드를 표시 할 수 있습니다. 어떤 [RDBMS] (http://en.wikipedia.org/wiki/Relational_database_management_system)를 사용하고 있습니까? 'RDBMS'는 * Relational Database Management System *을 의미합니다. 'RDBMS는 SQL의 기초입니다. 그리고 MS SQL Server, IBM DB2, Oracle, MySQL 등 모든 최신 데이터베이스 시스템을위한 것입니다. –

+0

@JW 내가 사용하는 데이터베이스는 MYSQL입니다. – Bruce

+2

' 2010-02-32'은 유효한 날짜입니까? –

답변

5

사용 MySQL 내장 함수는

이 달의 하루를 돌려 DAYOFMONTH

mysql> SELECT DAYOFMONTH('2007-02-03'); 
     -> 3 
문서에서

  • DAYOFMONTH()라고 날짜 범위는 1에서 31까지이며 의 경우 '0000-00-00'또는 '2008-00-00'과 같이 0 일 부분이 0입니다.

4

MySqlEXTRACT 함수는 주어진 날짜에서 일, 월 또는 연도 추출합니다.

select extract(day from created_date) as created_day from table 
+1

'추출'은 필요한 기능입니다. 전체 사양은 [w3schools] (http://www.w3schools.com/sql/func_extract.asp)에서 확인할 수 있습니다. –

3

당신은 당신의 형식으로 전체 날짜를 가져오고 네, 그것은 가능이

date("j", strtotime(date('Y-m-d')));