Я пытаюсь написать это, используя SQL SERVER:
"Привет! Сегодня ... Это число дня ... года. Канун Нового года в ...дней».
Мой код работает без проблем, но я также не могу печатать.Что я делаю неправильно?Я не закончил всю фразу, потому что мне нужно решить проблему, прежде чем я перейду к последней части.
DECLARE
@currentDate DateTime
SET @currentDate = GETDATE();
DECLARE @dayofyear datetime
SET @dayofyear=DATEDIFF(day,STR(YEAR(@dayofyear),4)+'0101',@dayofyear)+1
-- SELECT Numbertoday = DATEDIFF(day,STR(YEAR(@dayofyear),4)+'0101',@dayofyear)+1
print('Hi! Today is '+ CONVERT(VARCHAR(10), @currentDate , 111) + '. ' + 'This is the day number '+ ' ' + CONVERT (VARCHAR(10), @dayofyear) + of the year.')
Решение:
DECLARE
@currentDate DateTime
SET @currentDate = GETDATE();
DECLARE
@dayofyear DateTime
SET @dayofyear = GETDATE();
SELECT CONCAT('Hello! Today is ', CONVERT(VARCHAR(10), @currentDate , 111), '. It is the day ',
DATEDIFF(day,STR(YEAR(@dayofyear),4)+'0101',@dayofyear)+1, 'Of the year. New years eve is in ',
365 - DATEDIFF(day,STR(YEAR(@dayofyear),4)+'0101',@dayofyear)+1, ' days.' + ' ')