String SQLite连接

String SQLite连接,string,sqlite,datetime,sql-update,concatenation,String,Sqlite,Datetime,Sql Update,Concatenation,我试图使用上面的SQLite查询获取MM/DD/YYYY格式的日期字符串,并将其更改为YYYY-MM-DD。它的编写方式说明了此特定日期格式的各种显示方式(即M/D/YYYY、M/DD/YYYY和MM/D/YYYY) 如果我只接受上述查询的两个部分(即月和年、年和日或日和月),它就可以工作。然而,当我尝试连接上面的整个查询时,有些东西中断了,我只得到原始的日期字符串 知道发生了什么吗 谢谢 编辑以澄清您可以使用如下字符串函数: UPDATE table SET [Date] = SUBSTR(

我试图使用上面的SQLite查询获取
MM/DD/YYYY
格式的日期字符串,并将其更改为
YYYY-MM-DD
。它的编写方式说明了此特定日期格式的各种显示方式(即
M/D/YYYY
M/DD/YYYY
MM/D/YYYY

如果我只接受上述查询的两个部分(即月和年、年和日或日和月),它就可以工作。然而,当我尝试连接上面的整个查询时,有些东西中断了,我只得到原始的日期字符串

知道发生了什么吗

谢谢


编辑以澄清

您可以使用如下字符串函数:

UPDATE table 
SET [Date] = SUBSTR([Date], -4) || '-' || (CAST([Date] AS INT)) || '-' ||
             (CAST(SUBSTR([Date], INSTR([Date], '/') + 1) AS INT))
考虑将
PRINTR
SUBSTR('00'…)
与日常部分的一些嵌套争论结合起来:

更新myTable
设置日期=SUBSTR(日期-4)| |'-| |
PRINTF(“%02d”,SUBSTR(日期,1,INSTR(日期,“/”)-1))||“-”
PRINTF(“%02d”,替换(SUBSTR(日期,INSTR(日期“/”)+1,2),“/”,”);
更新mytable
设置日期=SUBSTR(日期-4)| |'-| |
SUBSTR('00'| | SUBSTR(日期,1,INSTR(日期,“/”)-1),-2)| |‘-
子项('00'| |替换(子项(日期,仪表(日期,“/”)+1,2),“/”,“,”)-2);

不幸的是,由于日期的显示方式(只有一位数字的月份和天数),这将不起作用。我编辑了上面的帖子来澄清。
update mytable 
set date = substr(date, -4) || '-' || substr(date, 1, 2) || '-' || substr(date, 4, 2)