2012-10-04 140 views
-1

可能重複:
MySQL date format轉換日期爲不同格式的

我有這一天,我需要做一個比較,但我需要做的,因爲查詢!

現在我有這個疑問:

Select date WHERE date="$today" 

$today的格式如下:dmY 我如何能直接轉化成DMY藏漢?日期字段? 喜歡的東西:

Select date("dmY",date) WHERE date="$today" 

我不知道這甚至有可能做到的,但我想它可能是,所以我會很感激的幫助不大,即使它簡單地說,是的,它是可行的,沒有, 不是!

+0

不要告訴我,沒有人允許有同樣的問題? 顯然我已經閱讀過東西,但沒有找到我的能力可以理解的東西。 只是因爲你可以投下來,並不意味着你可以隨時使用它 –

+0

呃?我有沒有禁止你遇到同樣的問題?我真的阻止你使用這個網站嗎?含。使用搜索和環顧四周?而且您確實知道在網站上發佈問題隨附的功能可以同時獲得:向下或向上投票。我不明白你現在抱怨在這裏發佈一個問題。 Ohters可能會認爲,否則,即使你覺得不對,也可能發生倒退。 – hakre

回答

1

我想你在哪裏有問題是在格式化PHP的日期,以配合什麼已從您的mysql_query

格式化

這是我想出來的。

我爲你創建了一個簡單的代碼來處理這個問題。

的過程是我用mysql的CURDATE()函數,然後格式化並放在桌子上

MySQL數據庫

-- phpMyAdmin SQL Dump 
-- version 3.4.5 
-- http://www.phpmyadmin.net 
-- 
-- Host: localhost 
-- Generation Time: Oct 04, 2012 at 01:44 PM 
-- Server version: 5.5.16 
-- PHP Version: 5.3.8 

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO"; 
SET time_zone = "+00:00"; 

-- 
-- Database: `my_db` 
-- 

-- -------------------------------------------------------- 

-- 
-- Table structure for table `datetable` 
-- 

CREATE TABLE IF NOT EXISTS `datetable` (
    `dateid` int(2) NOT NULL AUTO_INCREMENT, 
    `datestuff` date NOT NULL, 
    PRIMARY KEY (`dateid`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ; 

-- 
-- Dumping data for table `datetable` 
-- 

INSERT INTO `datetable` (`dateid`, `datestuff`) VALUES 
(1, '2012-10-02'), 
(2, '2012-10-04'); 

PHP搭配等植物學列了今天的日期從MySQL代碼(File)

<?php 
//Connect to your host 
$con = mysql_connect("localhost","admin","admin"); 
if (!$con) 
    { 
    die('Could not connect: ' . mysql_error()); 
    } 
//select your database 
mysql_select_db("my_db", $con); 

//getting today's date and formating it, output is like this (4-10-2012) 
$today = date('j-m-Y'); 

//query your table, also date has been formated like this (4-10-2012) 
$result = mysql_query("SELECT DATE_FORMAT(CURDATE() , '%e-%m-%Y') AS today, DATE_FORMAT(datestuff, '%e-%m-%Y') AS datestuff FROM datetable WHERE CURDATE() = datestuff"); 

//get the resultset 
while($row = mysql_fetch_array($result)) 
    { 
    echo "date in table: ".$row['datestuff']. "---- today's date: ". $row['datestuff']; 
    echo "<br />"; 
    } 
?> 

試試吧,讓我知道它的工作爲你....

+0

即使這是非常友善的你,你不應該這樣做只是爲了回答一些標準的問題,甚至可能是重複的。 – hakre

+0

嘿謝謝你,但它不會工作.. 我基本上需要比較日期.. –

+0

@hakre老兄我只是想幫助一個兄弟... – Oluwaseye

1
Select date_format(date, '%d%m%Y') 
from your_table 
WHERE date="$today" 

MySQL DATE_FORMAT

+0

不幸的是,沒有人能夠就日期格式字符串達成一致。 PHP是最靈活的,我希望MySQL和C#能夠支持它。 – Patrick

1

你需要使用date_format

Select date_format(date, '%d%m%Y) from table_name where date = "$today"

0
Select date_format("2012-06-01",'%d-%m-%Y') WHERE date="$today" 

注*:您可以使用日期分隔符 「 - 」 或 「/」,在「%d /%M /% Ÿ

比較日期示例:

Select * From temp where mydate > '2009-06-29 16:00:44'; 
+0

我如何比較兩個日期? –