如何在mysql中将字符串转换为日期格式?

时间:2018-07-04 09:33:00

标签: mysql

我的日期格式看起来像是“ 201710”。我正在尝试将此特定字符串转换为'2017-10-01'。

如何在mysql中将上述格式转换为所需格式?

我尝试使用以下查询:

SELECT *, DATE_FORMAT(yymm,'%Y-%m-%d') AS niceDate 
FROM table;

但是niceDate列显示为空。

任何人都可以帮助我....

4 个答案:

答案 0 :(得分:1)

我是SQL的新手,但我认为您需要指定要设置格式的列,例如,我不确定数据的确切代码,而是类似的内容;

select *, DATE_FORMAT(yourdata, "%Y/%m/%d") as niceDate
from table;

将“您的数据”更改为您希望格式化的日期列。让我知道是否有帮助,谢谢:)

答案 1 :(得分:0)

You can use STR_TO_DATE() funcion to convert string to date, 

在您的示例中,您没有提供日部分,只提供了年和月,但是对于使用此功能,您的字符串应具有年,月和日部分 例子

SELECT STR_TO_DATE('20171001','%Y%m%d') ;

答案 2 :(得分:0)

您可以使用此:

{{1}}

“ yourdatefield”替换为您的日期列名称。

答案 3 :(得分:0)

您可以CONCAT您的字符串/ FIELD,然后您有一个有效的DATE

extension UNNotificationAttachment {
/// Save the image to disk
static func create(identifier: String, image: UIImage, options: [NSObject : AnyObject]?) -> UNNotificationAttachment? {
    let fileManager = FileManager.default
    let tmpSubFolderName = ProcessInfo.processInfo.globallyUniqueString
    let tmpSubFolderURL = URL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent(tmpSubFolderName, isDirectory: true)
    do {
        try fileManager.createDirectory(at: tmpSubFolderURL, withIntermediateDirectories: true, attributes: nil)
        let imageFileIdentifier = identifier+".png"
        let fileURL = tmpSubFolderURL.appendingPathComponent(imageFileIdentifier)
        guard let imageData = UIImagePNGRepresentation(image) else {
            return nil
        }
        try imageData.write(to: fileURL)
        let imageAttachment = try UNNotificationAttachment.init(identifier: imageFileIdentifier, url: fileURL, options: options)
        return imageAttachment
    } catch {
        print("error " + error.localizedDescription)
    }
    return nil
  }
}

示例

SELECT str_to_date(CONCAT('201710','01'),'%Y%m%d');