我对SQL很新。
我试图在一个选择中显示,因为当客户在数据库中但我收到错误Conversion failed when converting date and/or time from character string.
以下是我尝试显示日期的代码。
SELECT Naam + ' is klant sinds ' + [Klant sinds] FROM tblKlant
[Klant sinds]
是日期时间类型。
谢谢你的时间!
答案 0 :(得分:0)
SELECT Naam + ' is klant sinds ' + CONVERT(VARCHAR,[Klant sinds],101) FROM tblKlant
101 =美国日期/时间格式
For a complete list of possible date/time formats
答案 1 :(得分:0)
试试这个:SELECT CAST(Naam as varchar) + ' is klant sinds ' + CAST([Klant sinds] as varchar) FROM tblKlant
我已将Naam作为varchar转换为确保所有内容都在varchar / string类型
答案 2 :(得分:0)
从SQL Server 2012开始,您可以使用CONCAT
将所有类型的值连接在一起,而不必担心转换或NULL
值:
DECLARE @v_naam NVARCHAR(100); SET @v_naam = N'Mic Mac Jampudding';
DECLARE @v_date DATETIME; SET @v_date = GETDATE();
DECLARE @v_somenullvalue NVARCHAR(10); SET @v_somenullvalue = NULL;
DECLARE @v_aninteger SMALLINT; SET @v_aninteger = 5;
SELECT CONCAT(@v_naam, ' is klant sinds ', @v_date, '. Some null value: ', @v_somenullvalue, ' and a lovely int: ', @v_aninteger);
输出:
Mic Mac Jampudding is klant sinds May 17 2017 11:27AM. Some null value: and a lovely int: 5
如果您只想在DATETIME
上没有时间部分的日期,则可以使用以下内容:
CAST(@v_date AS DATE)