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

Откуда:
Сообщений: 17
Помогите, пожалуйста!) Как прописать команду: "выбрать отделы, в которых сотрудники имеют детей в возрасте менее 7 лет, которые учатся в школе" ?
20 янв 15, 22:24    [17145320]     Ответить | Цитировать Сообщить модератору
 Re: Срочно!!!  [new]
xenix
Guest
автор
Помогите, пожалуйста!) Как прописать команду: "выбрать отделы, в которых сотрудники имеют детей в возрасте менее 7 лет, которые учатся в школе" ?

Зарежут тему, конечно, но

где скрипты создания таблиц?
20 янв 15, 22:30    [17145334]     Ответить | Цитировать Сообщить модератору
 Re: Срочно!!!  [new]
Almazix8888
Member

Откуда:
Сообщений: 17
Программа OraSQL. Более точной информацией не владею.Что-то на подобие "select*from........" Более точную информацию только завтра смогу дать...
20 янв 15, 22:56    [17145431]     Ответить | Цитировать Сообщить модератору
 Re: Срочно!!!  [new]
Almazix8888
Member

Откуда:
Сообщений: 17
Пишу со слов.Попросили помочь.
20 янв 15, 22:56    [17145435]     Ответить | Цитировать Сообщить модератору
 Re: Срочно!!!  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31948
Almazix8888
Программа OraSQL. Более точной информацией не владею.Что-то на подобие "select*from........" Более точную информацию только завтра смогу дать...
Microsoft SQL Server к этому точно не имеет отношения, почему вы сюда пишете?

Напишите в проектирование БД, или в Oracle

Хотя вряд ли поможет, вы же таблиц не показали.

Учиться нужно самостоятельно, во время всего семестра, а не готовить курсовик за ночь :-)
20 янв 15, 23:00    [17145443]     Ответить | Цитировать Сообщить модератору
 Re: Срочно!!!  [new]
LexusR
Member

Откуда: Novosibirsk
Сообщений: 1887
При ваших исходных данныx:
"выбрать отделы, в которых сотрудники имеют детей в возрасте менее 7 лет, которые учатся в школе"

это может выглядеть примерно так:
SELECT D.DepartmentID, D.DepartmentName
FROM Departments D
WHERE EXISTS(SELECT * FROM [Employee] e
	WHERE e.DepartmentID = d.DepartmentID
	AND EXISTS (SELECT * FROM [EmployeeFamily] f 
		WHERE f.EmployeeID = e.EmployeeID 
		AND f.StatusName IN ('сын','дочь')
		AND f.State IN ('школа') 
		AND DATEDIFF(Y,f.BirthDay,getdate())<7
		)
	) 
21 янв 15, 07:13    [17146066]     Ответить | Цитировать Сообщить модератору
 Re: Срочно!!!  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
Almazix8888
Спасибо!!) Жена беременна, не может человек разорваться, рожает со дня на день :-)


если про оракл не в этот форум, то это точно к нам
21 янв 15, 11:28    [17147349]     Ответить | Цитировать Сообщить модератору
 Re: Срочно!!!  [new]
iap
Member

Откуда: Москва
Сообщений: 47142
LexusR
При ваших исходных данныx:
"выбрать отделы, в которых сотрудники имеют детей в возрасте менее 7 лет, которые учатся в школе"

это может выглядеть примерно так:
SELECT D.DepartmentID, D.DepartmentName
FROM Departments D
WHERE EXISTS(SELECT * FROM [Employee] e
	WHERE e.DepartmentID = d.DepartmentID
	AND EXISTS (SELECT * FROM [EmployeeFamily] f 
		WHERE f.EmployeeID = e.EmployeeID 
		AND f.StatusName IN ('сын','дочь')
		AND f.State IN ('школа') 
		AND DATEDIFF(Y,f.BirthDay,getdate())<7
		)
	) 
Сомневаюсь, что в Oracle есть DATEDIFF() и GETDATE()
21 янв 15, 11:34    [17147416]     Ответить | Цитировать Сообщить модератору
 Re: Срочно!!!  [new]
Almazix8888
Member

Откуда:
Сообщений: 17
Select*from sort where nom_sotr in(select nom_sotr from deti where vozrast<7 and school is not null)
21 янв 15, 14:17    [17148689]     Ответить | Цитировать Сообщить модератору
 Re: Срочно!!!  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Модератор: Флуд потер. Попаясничали, и хватит.


Сообщение было отредактировано: 22 янв 15, 02:06
22 янв 15, 02:05    [17151857]     Ответить | Цитировать Сообщить модератору
 Re: Срочно!!!  [new]
Ruuu
Member

Откуда: Иркутск
Сообщений: 4272
Almazix8888
Select*from sort where nom_sotr in(select nom_sotr from deti where vozrast<7 and school is not null)
Осталось получить отделы, в которых эти сотрудники работают.

Возраст надо не числом хранить, а вычислять от даты рождения, потому как дети взрослеют
22 янв 15, 06:18    [17151925]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить