Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何将字符串值转换为日期格式_Mysql_Sql - Fatal编程技术网

Mysql 如何将字符串值转换为日期格式

Mysql 如何将字符串值转换为日期格式,mysql,sql,Mysql,Sql,这是我的字符串值20180421 我想将此值转换为2018/04/21 这是我的密码 $querya="SELECT STR_TO_DATE('$date','%m/%d/%Y');"; 但是我没有更改我的字符串您的格式已经是ISO格式,因此您可以使用date()进行转换: select date(?) 您也可以使用str\u to\u date(),但需要使用正确的格式: $querya = "SELECT STR_TO_DATE(?, '%Y%m%d')"; 注意?的用法。这是一个参数

这是我的字符串值
20180421

我想将此值转换为
2018/04/21

这是我的密码

$querya="SELECT STR_TO_DATE('$date','%m/%d/%Y');";

但是我没有更改我的字符串

您的格式已经是ISO格式,因此您可以使用
date()
进行转换:

select date(?)
您也可以使用
str\u to\u date()
,但需要使用正确的格式:

$querya = "SELECT STR_TO_DATE(?, '%Y%m%d')";
注意
的用法。这是一个参数占位符,指示应将值作为参数而不是变量传入

我应该指出,
2018/04/21
是一种特殊的格式。日期以内部格式存储。要获得特定的输出格式,需要将它们转换为字符串。这里有一个解决方案:

select date_format(date(?), '%Y/%m/%d')
date()
函数是可选的,因为MySQL将正确地将此字符串转换为日期,因此您还可以使用:

select date_format(?, '%Y/%m/%d')