Hướng dẫn set date format mysql - đặt định dạng ngày tháng mysql

Tôi có một trường ngày (tinytext) giữ thông tin ngày ở định dạng "dd-mm-yy", ví dụ 07-01-90. Sử dụng truy vấn MySQL, tôi muốn thay đổi nó thành định dạng ngày Yyyy-MM-DD. Tôi đã thử mã dưới đây nhưng không có gì xảy ra.

Nội dung chính ShowShow

  • Làm cách nào để định dạng cột ngày trong mysql?
  • Làm cách nào để thay đổi định dạng ngày của một cột hiện có trong SQL?
  • Làm cách nào để thay đổi định dạng ngày của một cột trong bảng?
  • Làm cách nào để định dạng cột ngày trong truy vấn SQL?

mysql_query("UPDATE Table SET date=STR_TO_DATE('date','%Y,%m,%d')");

hỏi ngày 24 tháng 2 năm 2012 lúc 7:31Feb 24, 2012 at 7:31Feb 24, 2012 at 7:31

Hướng dẫn set date format mysql - đặt định dạng ngày tháng mysql

1

Bạn đang sử dụng đúng chức năng

mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");
0 để đạt được mục tiêu, nhưng bạn đang mắc hai sai lầm:

  1. Trong truy vấn của bạn, đối số
    mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
    mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");
    
    1 không khớp với định dạng biểu thức chuỗi. Bạn đã nói rằng nó ở định dạng
    mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
    mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");
    
    2 trong khi bạn vượt qua
    mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
    mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");
    
    3 (dấu phẩy tách biệt) cho đối số
    mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
    mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");
    
    1. Truy vấn sẽ trả về lỗi "giá trị dữ liệu không chính xác". Bạn nên sử dụng
    mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
    mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");
    
    1.
  2. Bạn không thể thay đổi kiểu dữ liệu của một cột khi đang bay, bằng cách đặt các loại giá trị khác nhau được truyền. Trước tiên bạn phải cập nhật các giá trị và sau đó thay đổi kiểu dữ liệu cho cột.

Vì vậy, tóm tắt:

mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");

Ngoài ra, hãy xem xét chuyển đổi sang phần mở rộng PDO được đề xuất thay cho phần mở rộng

mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");
2 cũ và từ từ.

Đã trả lời ngày 22 tháng 5 năm 2012 lúc 9:48May 22, 2012 at 9:48May 22, 2012 at 9:48

TaztazTazTaz

3.6672 Huy hiệu vàng37 Huy hiệu bạc58 Huy hiệu Đồng2 gold badges37 silver badges58 bronze badges2 gold badges37 silver badges58 bronze badges

Lỗi trong truy vấn của bạn

là str_to_date (ngày, '%y-%m-%d'))date, '%Y-%m-%d')date, '%Y-%m-%d')

mysql_query("UPDATE Table SET date=STR_TO_DATE(date,'%Y-%m-%d')");

Đã trả lời ngày 24 tháng 2 năm 2012 lúc 8:33Feb 24, 2012 at 8:33Feb 24, 2012 at 8:33

Naveen Kumarnaveen KumarNaveen KumarNaveen Kumar

4,4231 Huy hiệu vàng17 Huy hiệu bạc36 Huy hiệu đồng1 gold badge17 silver badges36 bronze badges1 gold badge17 silver badges36 bronze badges

Thử cái này:

INSERT INTO table(date_field) VALUES(STR_TO_DATE('December 8, 2010','%M %d,%Y'));

DevPro

16.1k3 Huy hiệu vàng26 Huy hiệu bạc38 Huy hiệu đồng3 gold badges26 silver badges38 bronze badges3 gold badges26 silver badges38 bronze badges

Đã trả lời ngày 21 tháng 7 năm 2014 lúc 6:41Jul 21, 2014 at 6:41Jul 21, 2014 at 6:41

KarankaranKaranKaran

5176 Huy hiệu bạc16 Huy hiệu Đồng6 silver badges16 bronze badges6 silver badges16 bronze badges

Hãy thử nó với hàm date_format ().

 mysql_query("UPDATE Table SET date=DATE_FORMAT(date,'%Y,%m,%d')");

Đã trả lời ngày 24 tháng 2 năm 2012 lúc 7:35Feb 24, 2012 at 7:35Feb 24, 2012 at 7:35

Korhan Ozturkkorhan OzturkKorhan OzturkKorhan Ozturk

Huy hiệu vàng 11K634 Huy hiệu bạc47 Huy hiệu đồng6 gold badges34 silver badges47 bronze badges6 gold badges34 silver badges47 bronze badges

  1. Để hiển thị 2 chữ số2 digit year2 digit year

    mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
    mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");
    
    3
  2. Để hiển thị 4 chữ số4 digit year4 digit year

    mysql_query("UPDATE `Table` SET `date` = STR_TO_DATE(`date`, '%d-%m-%Y')");
    mysql_query("ALTER TABLE `Table` CHANGE COLUMN `date` `date` DATE");
    
    4

Đã trả lời ngày 24 tháng 2 năm 2012 lúc 7:35Feb 24, 2012 at 7:35Feb 24, 2012 at 7:35

Korhan Ozturkkorhan OzturkKorhan OzturkFahim Parkar

Huy hiệu vàng 11K634 Huy hiệu bạc47 Huy hiệu đồng6 gold badges34 silver badges47 bronze badges41 gold badges157 silver badges274 bronze badges

2

Để hiển thị 2 chữ số2 digit year

UPDATE table_name SET date = DATE_FORMAT('date', %Y-%m-%d);

Để hiển thị 4 chữ số4 digit year

Korhan Ozturkkorhan OzturkFahim Parkar5 gold badges23 silver badges39 bronze badges

Huy hiệu vàng 11K634 Huy hiệu bạc47 Huy hiệu đồng41 gold badges157 silver badges274 bronze badgesFeb 24, 2012 at 7:36

Để hiển thị 2 chữ sốhelle

Để hiển thị 4 chữ số9 gold badges56 silver badges82 bronze badges

Fahim Parkarfahim Parkar5 gold badges23 silver badges39 bronze badges

30.4K41 Huy hiệu vàng157 Huy hiệu bạc274 Huy hiệu đồngFeb 24, 2012 at 7:36Feb 24, 2012 at 7:34

Tôi muốn nói bạn phải làm điều này:helleKumar V

AKSU9 gold badges56 silver badges82 bronze badges9 gold badges39 silver badges58 bronze badges

Làm cách nào để định dạng cột ngày trong mysql?

5.1815 Huy hiệu vàng23 Huy hiệu bạc39 Huy hiệu Đồng.

Đã trả lời ngày 24 tháng 2 năm 2012 lúc 7:36Feb 24, 2012 at 7:34

HellehelleKumar V

10,9k9 Huy hiệu vàng56 Huy hiệu bạc82 Huy hiệu Đồng9 gold badges39 silver badges58 bronze badges

MySQL cung cấp một số nhà xác định có sẵn, như:..

%A - Tên tuần được viết tắt ..

%Y-năm, trong 4 chữ số ..

%M - tên đầy đủ của tháng ..

Làm cách nào để thay đổi định dạng ngày của một cột hiện có trong SQL?

%E - Ngày của tháng (từ 1 - 31) ..using CONVERT and FORMAT. For example: select convert(varchar(max), DateColumn, 13), format(DateColumn, 'dd-MMM-yyyy')

Làm cách nào để thay đổi định dạng ngày của một cột trong bảng?

%H-giờ (từ 00-23) ...

%i-phút (từ 00-59) ..

%s-giây (từ 00-59) ..

Bạn có thể chỉ định định dạng của ngày trong các câu lệnh của bạn bằng cách sử dụng chuyển đổi và định dạng. Ví dụ: Chọn Chuyển đổi (Varchar (Max), Datecolumn, 13), Định dạng (Datecolumn, 'DD-MMM-YYYY'))using CONVERT and FORMAT. For example: select convert(varchar(max), DateColumn, 13), format(DateColumn, 'dd-MMM-yyyy')

Làm cách nào để định dạng cột ngày trong truy vấn SQL?

Thay đổi định dạng ngày trong một cột...

Đặt loại cột của bạn cho đến nay ..

Nhấp vào tiêu đề cột, sau đó chọn Tùy chọn ngày ..

Trong trường định dạng ngày, sau đó bạn có thể chọn cách bạn muốn hiển thị ngày của mình (ví dụ: DD/mm/yyyy).

SQL Server đi kèm với các loại dữ liệu sau để lưu trữ một ngày hoặc giá trị ngày/thời gian trong cơ sở dữ liệu: Ngày-Định dạng yyyy-mm-dd ...