| Начало » Использование СУБД » Microsoft SQL Server » Период (Создать период от заданной даты) Переход к форуму:
	|  |  
	|  |  
	| 
		
			| Re: Период [сообщение #3523 является ответом на сообщение #3522] | Wed, 25 October 2023 12:01   |  
			| 
				
				
					|  krioxi Сообщений: 16
 Зарегистрирован: October 2023
 | Junior Member |  |  |  
	| select CONVERT(VARCHAR(5), ServDate, 08) AS ServDate,
 Quantity,
 Additional,
 Visit.OpenDate as OpenDate,
 Visit.CloseDate as CloseDate,
 EmployeeSet.Name as Name11,
 Price
 
 FROM
 ServedSet
 INNER JOIN
 (	SELECT
 Name,
 CONVERT (date, OpenDate) as OpenDate,
 CONVERT (date, CloseDate) as CloseDate,
 VisitsSet.Id AS VisitID,
 Birth,
 Clients_Category as Category
 
 FROM
 VisitsSet
 
 JOIN ClientsSet
 ON Visits_Clients = ClientsSet.Id
 ) AS Visit
 ON ServedSet.Served_Visits = Visit.VisitID
 
 INNER JOIN
 ServicesSet
 ON Served_Services = ServicesSet.Id
 
 INNER JOIN
 EmployeeSet
 ON Served_Employee = EmployeeSet.Id
 
 
 WHERE
 IsServed in (0,1)
 AND
 OpenDate = @Zaezd AND
 Visit.Name = (@Client)
 AND
 Type !='СБ'
 Пример:
 @Zaezd-заезд 27.08.2023 (длится 14 дней)
 @Client-фио клиента
 28.08,29.08,31.08,5.09,7.09 массаж
 нужно чтобы отображались все дни с27.08 по  10.09
 |  
	|  |  |  
	|  |  
	|  |  
	|  |  
	| 
		
			| Re: Период [сообщение #3593 является ответом на сообщение #3578] | Wed, 01 November 2023 10:58  |  
			| 
				
				
					|  BlackEric Сообщений: 393
 Зарегистрирован: June 2022
 | Senior Member |  |  |  
	| Что не получается? Вывести даты в запросе на несколько дней вперед от переданной? 
 Как-то так:
 
 use testdb
Go
IF OBJECT_ID(N'tempdb..#Accounts') IS NOT NULL  
   DROP TABLE #Accounts;  
 
CREATE TABLE #Accounts ( CreatedAt DATE, Balance MONEY)
 
DECLARE @rate FLOAT, @period INT, @sum MONEY, @date DATE
SET @date = GETDATE()
SET @rate = 0.065;
SET @period = 10;
SET @sum = 10000;
 
WHILE @period > 0
    BEGIN
        INSERT INTO #Accounts VALUES(@date, @sum)
        SET @period = @period - 1
        SET @date = DATEADD(day, 1, @date)
        SET @sum = @sum + @sum * @rate
    END;
 
SELECT * FROM #Accounts |  
	|  |  | 
 
 
 Текущее время: Mon Oct 27 02:26:59 GMT+3 2025 
 Общее время, затраченное на создание страницы: 0.01227 секунд |