Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Có cách nào để chuyển đổi nhiều định dạng ngày thành trăn ngày giờ không

Sử dụng dateutil của bên thứ ba thư viện:

>>> from dateutil import parser
>>> parser.parse("August 2, 2008")
datetime.datetime(2008, 8, 2, 0, 0)
>>> parser.parse("04-02-2007")
datetime.datetime(2007, 4, 2, 0, 0)
>>> parser.parse("May 2014")
datetime.datetime(2014, 5, 6, 0, 0)

Chuyển đổi sang định dạng bắt buộc:

>>> parser.parse("August 2, 2008").strftime('%Y-%m-%d')
'2008-08-02'
>>> parser.parse("04-02-2007").strftime('%Y-%m-%d')
'2007-04-02'
>>> parser.parse("May 2014").strftime('%Y-%m-%d')
'2014-05-06'

Bạn có thể cài đặt nó bằng pip:

pip install python-dateutil

Cũng xem tại:

>>> parser.parse("May 2014")
datetime.datetime(2014, 5, 6, 0, 0)
>>> # As you wanted day to be 0 and that is not valid
...
>>> datetime.datetime(2014, 5, 0, 0, 0)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: type object 'datetime.datetime' has no attribute 'datetime'
>>> # Workaround:
...
>>> from datetime import datetime
>>> datedefault = datetime.now().replace(day=1, hour=0, minute=0, second=0, microsecond=0)
>>> parser.parse("May 2014",default=datedefault).strftime('%Y-%m-%d')
'2014-05-01'

Nếu ngày không được chỉ định trong chuỗi ngày và cũng không có mặc định nào được chỉ định, thì nó sẽ là ngày hiện tại. Kể từ hôm nay là 06 Aug 2016 , nó đã thay thế ngày thành 0 trong phần đầu tiên của câu trả lời cho "May 2014" .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tại sao find_in_set hoạt động nhưng mệnh đề IN

  2. Làm thế nào tốt hơn nếu tham gia một vài bảng (bao gồm cả truy vấn con) trong một truy vấn?

  3. Trình tạo truy vấn Laravel cho kết quả đệ quy? Ví dụ. id, parent_id

  4. Truy xuất 10 hàng TOP mà không cần sử dụng TOP hoặc LIMIT? - Câu hỏi Phỏng vấn Tuần # 247

  5. Tôi có thể kiểm soát GROUP BY trong orm của django 1.3 không?