Sql server 如何从一个表中获取日期并插入到另一个表中

Sql server 如何从一个表中获取日期并插入到另一个表中,sql-server,Sql Server,我使用以下查询从一个表中获取日期并插入到另一个表中 INSERT INTO InstallmentPaymentHistory VALUES('DateSold') SELECT CONVERT(VARCHAR(11), s.DateSold, 113) AS DateSold FROM SalesInvoice s WHERE s.SalesInvoiceID = 9; 但我犯了个错误 从字符串转换日期和/或时间时转换失败 我也试过了 INSERT INTO Installment

我使用以下查询从一个表中获取日期并插入到另一个表中

INSERT INTO InstallmentPaymentHistory 
VALUES('DateSold')

SELECT CONVERT(VARCHAR(11), s.DateSold, 113) AS DateSold  
FROM SalesInvoice s 
WHERE s.SalesInvoiceID = 9;
但我犯了个错误

从字符串转换日期和/或时间时转换失败

我也试过了

INSERT INTO InstallmentPaymentHistory 
VALUES('YYYY.MM.DD')  

SELECT CONVERT(VARCHAR(11), s.DateSold, 113) AS DateSold  
FROM SalesInvoice s 
WHERE s.SalesInvoiceID = 9;
但我也犯了同样的错误

表1

SalesInvoiceID  CustomerID   SoldDate       TotalBill
-------------------------------------------------------     
1                3840        2018.03.22      20000
2                4581        2018.04.11      80000
3                4420        2018.05.13      60000
表2

InstallmentPaymentID    SalesInvoiceID  InstallmentNo     DueDate PaymentDdate
---------------------------------------------------------------                 
1                     2                 1            2018.03.22  2018.3.22
2                     2                 2            2018.04.11  2018.3.22
3                     2                 3            2018.05.13  2018.3.22

不完全清楚你想用这些命令做什么

如果要使用SELECT,并结合一些固定值,则应使用如下内容:

INSERT INTO dbo.InstallmentPaymentHistory (specify-the-list-of-columns-here!)
    SELECT 
        -- provide the fixed values here, first
        11, 9, 2, 'DateSold', '20180306', 6000,
        -- then the "calculated/converted" value from your other table
        CONVERT(VARCHAR(11), s.DateSold, 113) 
    FROM 
        dbo.SalesInvoice s 
    WHERE 
        s.SalesInvoiceID = 9;
另外:从您的帖子中还不清楚日期字符串2018.3.6是指6月3日还是3月6日-但我建议始终使用经过修改的ISO-8601格式,即YYYYMMDD,不带任何破折号或任何东西


因此,对于3月6日,使用20180306;对于6月3日,使用20180603

您的插入可以类似于插入表格列列表值列表值列表,也可以插入表格列列表从中选择列列表。。。。其中但是我真的不明白你在这里想做什么-一些值,还有一个SELECT-你希望两者都为INSERT提供值吗??那肯定不行!我将从用户的前端GUI中获取值,但DueDate列表2将从SoldDate列表中获取值1@shakeelahmad:更新了我的回复-您的日期格式非常不寻常-请参阅我的评论并为您选择正确的值我的日期格式为YYYY.MM.DD我已编辑了我的问题,以便于理解我想要什么