Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 выбор определенных данных из таблицы  [new]
Вя4еслаw
Member

Откуда:
Сообщений: 69
Столкнулся с проблемкой, мне нужно вытащить несколько ответственных по условию:
определить ответственных.Ответственными являются все сотрудники, занимающие следующие должности:

Водитель трамвая - всегда,
Водитель автобуса всегда,
Начальник транспортного отдела - при наличии
Если не найден "Начальник транспортного отдела"проверяемого подразделения, то выбирать вместо него "Специалиста по
Транспорту" или должность в которой содержится "транспортного"/"транспорту"
проверяемого подразделения.


Эти должности выбираются из.
select 
Cast(baza.[dolznost] as varchar (100) as [dolzn]  -- хранятся должности всех подразделений
Cast(baza.[podrazdelenie] as varchar(100) as [podrzdl] -- проверяемое подразделение
 from [dbo].[(база)] baza with(nolock) 


Microsoft SQL Server 2008


Данные в таблице всевозможные, несколько подразделений . Подразделение1. Подразделение 2. ... Подразделение 7
20 фев 13, 09:31    [13952918]     Ответить | Цитировать Сообщить модератору
 Re: выбор определенных данных из таблицы  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10234
Блог
cte
20 фев 13, 10:02    [13953054]     Ответить | Цитировать Сообщить модератору
 Re: выбор определенных данных из таблицы  [new]
aleks2
Guest
Knyazev Alexey
cte

Вот нафега тут CTE?
20 фев 13, 10:10    [13953075]     Ответить | Цитировать Сообщить модератору
 Re: выбор определенных данных из таблицы  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10234
Блог
aleks2
Knyazev Alexey
cte

Вот нафега тут CTE?


автор
Данные в таблице всевозможные, несколько подразделений . Подразделение1. Подразделение 2. ... Подразделение 7
20 фев 13, 10:18    [13953108]     Ответить | Цитировать Сообщить модератору
 Re: выбор определенных данных из таблицы  [new]
Вя4еслаw
Member

Откуда:
Сообщений: 69
А можно на примере увидеть?
20 фев 13, 11:06    [13953363]     Ответить | Цитировать Сообщить модератору
 Re: выбор определенных данных из таблицы  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10234
Блог
Вя4еслаw
А можно на примере увидеть?

а можно скрипты с созданием ваших объектов и с наполнением данных + желаемый результат?...иначе вот вам пример:

http://msdn.microsoft.com/en-us/library/ms190766(v=sql.105).aspx

USE AdventureWorks2008R2;
GO
WITH DirectReports (ManagerID, EmployeeID, Title, DeptID, Level)
AS
(
-- Anchor member definition
    SELECT e.ManagerID, e.EmployeeID, e.Title, edh.DepartmentID, 
        0 AS Level
    FROM dbo.MyEmployees AS e
    INNER JOIN HumanResources.EmployeeDepartmentHistory AS edh
        ON e.EmployeeID = edh.BusinessEntityID AND edh.EndDate IS NULL
    WHERE ManagerID IS NULL
    UNION ALL
-- Recursive member definition
    SELECT e.ManagerID, e.EmployeeID, e.Title, edh.DepartmentID,
        Level + 1
    FROM dbo.MyEmployees AS e
    INNER JOIN HumanResources.EmployeeDepartmentHistory AS edh
        ON e.EmployeeID = edh.BusinessEntityID AND edh.EndDate IS NULL
    INNER JOIN DirectReports AS d
        ON e.ManagerID = d.EmployeeID
)
-- Statement that executes the CTE
SELECT ManagerID, EmployeeID, Title, DeptID, Level
FROM DirectReports
INNER JOIN HumanResources.Department AS dp
    ON DirectReports.DeptID = dp.DepartmentID
WHERE dp.GroupName = N'Sales and Marketing' OR Level = 0;
GO
20 фев 13, 11:08    [13953373]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить