j'aiutilisélarequêteuivante:
SELECT DATEPART(year, (select convert (nvarchar(20),[DateFacture]) FROM [ArcoCerame].[dbo].[FactureClient]))
,DATEPART(month, (select convert (nvarchar(20),[DateFacture]) FROM [ArcoCerame].[dbo].[FactureClient]))
,DATEPART(day, (select convert (nvarchar(20),[DateFacture]) FROM [ArcoCerame].[dbo].[FactureClient]))
,DATEPART(dayofyear, (select convert (nvarchar(20),[DateFacture]) FROM [ArcoCerame].[dbo].[FactureClient]))
,DATEPART(weekday, (select convert (nvarchar(20),[DateFacture]) FROM [ArcoCerame].[dbo].[FactureClient]));
Mais le SQL Server Management Studio m'affichecettereésultat:
Msg 512,Niveau 16,État1,Ligne 1 La sous-requête是retournéplusieursvaleurs。 Cela n'estpasautoriséquandla sous-requêtesuits=,!=,<,< =,>,> = ou quand elleestutiliséeentant qu'expression。
你能帮助我们纠正我的陈述并提前致谢
答案 0 :(得分:1)
您可以在日期上使用year()
和month()
函数。不要转换为字符串进行日期操作!
所以,像这样:
SELECT year([DateFacture]), month([DateFacture]), day([DateFacture])
FROM [ArcoCerame].[dbo].[FactureClient]