0 / 0 / 0
Регистрация: 26.12.2013
Сообщений: 4
|
|
1 | |
Запрос свободных номеров гостиницы26.12.2013, 18:58. Показов 9066. Ответов 4
Метки нет (Все метки)
У меня такой вопрос. Создал информационную систему "Гостиница" в делфи, с таблицами Клиенты, Регистрация, Номера, Обслуживание и Бронирование, и одна из задач ИС - отображение свободных номеров, т. е. тех номеров, номер ключа которых не указан в таблицах Регистрация и Бронирование, а в таблице Номера они имеются. Знаю, что вся работа будет проходить вокруг SQL, вот только не знаю как правильно построить запрос. Помогите плиз...
0
|
26.12.2013, 18:58 | |
Ответы с готовыми решениями:
4
Учет свободных и занятых номеров Sql запрос на выдачу свободных мест в зале Запрос на вывод количества свободных номеров за конкретный период в бд Гостиница Не получается создать хранимую процедуру, которая выводила бы список свободных номеров на текущую дату |
25 / 25 / 7
Регистрация: 27.02.2013
Сообщений: 113
|
||||||
27.12.2013, 09:01 | 2 | |||||
Примерно так, не зная контретные имена полей Ваших таблиц:
1
|
0 / 0 / 0
Регистрация: 26.12.2013
Сообщений: 4
|
|
27.12.2013, 09:30 [ТС] | 3 |
Имена полей:
Таблица Регистрация: ID_registraciya, ID_client, ID_nomer Таблица Номера: ID_nomer, ID_obsluzhivaniya Таблица Бронирование: ID_bronirovaniya Lookup: Nomer.ID_nomer←Registraciya.ID_nomer Bronirovanie.ID_bronirovaniya→Nomer.ID_nomer Препод предложил еще такой вариант, в таблице Номера создать поле Статус, которое должно автоматически заполняться в соответствии с номером словом "занят" при вводе ID_nomer в таблицах Регистрация и Бронирование. А потом по этому полю ориентироваться, какой номер занят или свободен. вот как это условие "вбить" в SQL подскажите, пожалуйста, заранее спасибо =)
0
|
25 / 25 / 7
Регистрация: 27.02.2013
Сообщений: 113
|
||||||
27.12.2013, 12:08 | 4 | |||||
Мне не очень понятна структура Ваших таблиц. Мне кажется, что они неправильно спроектированы.
Я бы предложила следующую структуру таблиц: 1. Клиенты: (* ID_client, FIO, и т.д. все нужные данные о клиенте) 2. Регистрация: (* ID_ registraciya, ID_nomer, дата регистрации или бронирования, признак, статус) Где признак - это сигнал того, что номер еще обслуживается в данный момент или обслуживание номера уже завершено. Например, признак=0 – обслуживание завершено. Признак =1, обслуживание еще не закончено. Статус - это заселение или бронирование ID_nomer – номер в отеле. 3. Номера_в_отеле (*ID_nomer, этаж, комфортность и т.д. все нужные данные о номере) . Где в скобках указаны поля таблиц, первичные ключи отмечены «*». Тогда следующий запрос вернет все номера, которые в данный момент не участвуют ни в регистрации, ни в бронировании:
0
|
0 / 0 / 0
Регистрация: 26.12.2013
Сообщений: 4
|
|
27.12.2013, 12:49 [ТС] | 5 |
ita2907, Спасибо, все получилось, даже не надо было создавать дополнительное поле Статус)))
0
|
27.12.2013, 12:49 | |
27.12.2013, 12:49 | |
Помогаю со студенческими работами здесь
5
Запрос за вывод свободных мест в общежитии по комнатам SQL-запрос для вывода всех табельных номеров сотрудников Получение нужного количества свободных номеров Id Запрос свободных номеров гостиницы access Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |