Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: рейтинг сайта

составить рейтинг посещений каждого сайта :
назв. сайта, создатель, кол-во посещений( отсортировать от большего к меньшему)

есть таблицы

создатель
номер
имя

сайт
номер
имя

сайт_создатель
номер
номер_создателя
номер_сайта


посетитель_сайт
номер
номер_посетителя
номер_сайта
Ответ: подскажите направление.
как соеденить

SELECT
FROM сайт INNER JOIN сайт_создатель ON сайт.номер = сайт_создатель.номер_сайта
создатель INNER JOIN сайт_создатель ON создатель.номер = сайт_создатель.номер_создателя
сайт INNER JOIN посетитель_сайт ON сайт.номер= посетитель_сайт.номер_сайта



и
посчитать кол-во посещений сайта
и в конце
ORDER BY desc count(посетитель_сайт.номер_сайта)
Вопрос: Учет свободных и занятых номеров

Доброго времени Вам суток!
Имеется хранилище(маленькое) которое хранит в себе данные об отелях, в том числе о свободных и занятых номерах.
Есть проблема, вывода свободных номеров отеля.
Я определил сущность регистрирующую занятые номера (HotelRoomRegistry), нужна ли она? Я думаю, что нужна, но профессионалам виднее.
И стоит ли заводить сущность регистрации свободных номеров? (как по мне так это не выход).
По моей логике, вывести свободный номер можно было бы на основе занятых номеров (те которые записаны в таблице HotelRoomRegistry) , то есть выводить только те номера которые не присутствуют в таблице HotelRoomRegistry.
Данные о номерах отеля лежат в HotelRoom.

Может есть другой выход?

P.S приложил диаграмму.
Ответ: Спасибо, Вам за помощь. Я недавно только начал со всем этим разбираться, и чем дольше копаюсь тем больше понимаю, что с отелями, гостиницами, предметная область обширна. Ваши советы, все в точку и в помощь.
Цены зависят от типа номера, от того что в нем есть, поэтому да, с ценой номера из учета цены места, это полный бред.
Соглашусь с Bit_Man, что гостиницы могут только подселить в номер а отель нет, нету выгоды от этого, а даже если и есть то такие варианты неблагоприятны для заказчика номера, скажем так. Поэтому это очень на сколько я понимаю редкая практика среди отелей.
Вопрос: Получить номер записи в диапазоне дат - автоматическая нумерация документов по месяцам

Добрый день!
Есть задача сделать автоматическую нумерацию документов которая будет начинаться каждый месяц с 1.
Номер документа хранить в базе не получиться т.к. если удалить какой то док. - нумерация должна сдвинуться.

К примеру если удалить документ №2, то №3 должен стать №2

Дата: 2016-11-03
Номер: 3
Дата: 2016-11-02
Номер: 2

Дата: 2016-11-01
Номер: 1
Дата: 2016-10-01
Номер: 1

У меня получилось только вывести последовательно номера строк, но это не то...

SQL
1
2
3
4
5
SELECT
 (@ROW_NUMBER:=@ROW_NUMBER + 1) AS num,
 date_departure,
FROM ae_flight_assignment, (SELECT @ROW_NUMBER:=0) AS t
LIMIT 1, 30
Плиз подскажите как это можно сделать для одной записи и для нескольких
Ответ: Bogner, спасибо огромное - всё работает!

Добавлено через 7 часов 56 минут
Сообщение от Anvano
эээ?? документы для кого ? вы у заказчика лучше уточните что он имел ввиду, скорее всего не сдвинуться, а ДЫРЫ заполняться должны.
Иначе ж полная херня будет, представь, что вы документ предоставили куда-то во вне (в налоговую или еще куда) а у вас с базе он хоп и под другим номером уже. Да контора закроется после первой же камеральной. А виноваты вы будете, потому что неправильно требования поняли
Спасибо, за совет) Напишу им письмо.
Вопрос: Найти следующий рейс (или рейсы), отправляющийся после рейса с номером 50

Найдите следующий рейс (или рейсы), отправляющийся после рейса с номером 50. Выведите название маршрута, день недели, часы и минуты отправления.

km_prices (расценки за километр)
class(класс автобуса)
price (цена за км для данного класса)
models (марки или модели автобусов)
cod_model (код, суррогатный ключ)
name_model (название, атрибут носит справочный характер)
places (количество мест в автобусах данной марки)
class (класс комфортности)
buses (автобусы)
cod_bus (код автобуса, возможно его инвентарный номер)
bus_number (номер ГИБДД, атрибут носит чисто справочный характер)
cod_model (марка автобуса, внешний ключ)
points (населенные пункты)
cod_point (код, суррогатный ключ)
name_point (название)
distance (расстояние от пункта отправления)
routes (маршруты)
cod_route (код, суррогатный ключ)
name_route (название маршрута)
points_routes (связь между пунктами и маршрутами)
cod_point (код пункта, внешний ключ)
cod_route (код маршрута, внешний ключ)
trips (рейсы)
cod_trip (код рейса, суррогатный ключ)
week_day (день недели)
hour (часы)
minute (минуты)
cod_route (код маршрута)
cod_bus (код автобуса, назначенного на данный рейс)
tickets (количество проданных билетов)
Пункты и маршруты имеют связь "Многие-ко-Многим" (через каждый пункт может проходить несколько маршрутов и каждый маршрут имеет несколько остановок). Для этого служит таблица-связка points_routes.
Сущность trips (рейсы) связывает сущности Маршруты и Автобусы, дополняя их такими важными атрибутами как время отправления. Здесь же фиксируется и количество проданных билетов на каждый рейс (после отправления рейса поле обнуляется).
Дни недели в trips - числа от 1 до 7, где 1 - понедельник, 2 - вторник и т.д.
Номера и марки автобусов, названия маршрутов, названия населенных пунктов уникальны
Допустимо наличие маршрутов, не используемых ни в одном рейсе. Могут быть населённые пункты, не используемые ни в одном маршруте, маршруты, в которые ещё не включены никакие пункты, автобусы, не задействованные ни в одном рейсе. Аналогично, в базе может содержаться марка автобуса, но не быть ни одного автобуса такой марки.

Я смог написать вот это
MySQL
1
2
3
4
5
SELECT name_route, week_day, hour, minute
FROM routes INNER JOIN trips ON routes.cod_route=trips.cod_route
where (hour*60+minute+week_day*1440)=
(select min(hour*60+minute+week_day*1440) from trips where (hour*60+minute+week_day*1440)>=
(select min(hour*60+minute+week_day*1440) from trips where cod_trip=50)  and cod_trip<>50  )
не могу понять, как вывести маршрут, который будет идти после последнего на текущей неделе.
Т.е. если маршрут с номером 50 будет последним в этой неделе, то нужно вывести первый на следующей
Ответ:
Сообщение от YuryK
с какой остановки? Из пункта отправления? А искомый может быть проходящим?
после рейса с cod_trip=50, т.е. по времени следующий. Если отсортировать по времени, то получается следующий за рейсом с номером 50.
Сообщение от YuryK
Несколько в случае если все в одно (ближайшее за 50-м) время, а один, если он такой оказался один?
да, так и есть.
Вопрос: Присвоение номера товарного чека

Здравствуйте, уважаемые форумчане!

Создаю свою первую БД. Для прикладного использования. Работаю в MS Access. Хочу попросить помощи в следующем.
Необходимо в ретроспективе присвоить номера товарных чеков. Есть три поля Номер ТЧ, Дата и Магазин. В поле Номер ТЧ записей нет. В остальных - содержатся данные. Условия такие: магазин заказывает различный товар только один раз в день. Соответственно в тех строках, где дата и магазин совпадают, должен стоять одинаковый номер товарного чека. Если условие меняется, например, дата та же, а магазин другой, соответственно присваивается Номер ТЧ+1. Для наглядности прикреплю картинку.
Как мне создать такой запрос на изменение?? Буду очень благодарен за помощь!!
Ответ:
Сообщение от goldenbar
при нажатии на кнопку Задать номера чеков в форме у меня выскакивает следующая ошибка:
Бывает иногда. Хотя в последнее время в А2010 не встречалось.

Говорит о том, что превышено число блокировок таблицы. Это архаизм доставшийся по наследству от первых акцессов, когда памяти было мало и надо было бороться с ее отсутствием. Обычно в реестре винды оно задано 9500. Но можно поставить любое число предложением SetOption. Например 300000
Visual Basic
1
DBEngine.SetOption dbMaxLocksPerFile, 3000000
В событии Load формы увеличено сеансовое значение MaxLocksPerFile

Время выполнения около 4-5 секунд
Вопрос: Реализовать автоматическое присвоение доп номера после ввода цены

Добрый день, пытаюсь сделать учет материалов.

Каждый материал имеет
-свой номенклатурный номер уникальный и
-допноменклатурныйномер, который присваивается в зависимости от цены.

Например пришел товар 1
-по цене 5,00 допномер будет - 1,
-пришел по другой цене - 8,00, допномер - 2,
-если пришел снова по 5,00 номер 1.

Подскажите пожалуйста как реализовать автоматическое присвоение доп номера после ввода цены?

И еще 1 вопрос при приходе кода цеха не будет так как товар не выписывался, а ставился на приход.
Ввести запись с пустым кодом цеха при приходе товара не получается.
Ответ: По идее ДопЦена, это наверное должен быть - Коэффициент, а не цена.
Основная цена должна быть у товара, Вы только присваиваете коэффициент и соответственно увеличивается цена и к основному Номенклатурному номеру автоматом присоединяется дополнительный номер.

Добавлено через 3 минуты
Сообщение от alexpro1979
это долго.

Чего тут долгого, раз в жизни присвоили и только подставляй
Или Вы, что в один день
у ДопЦены = 5 присваиваете ДопНомер=1,
а на следующий день
у ДопЦены = 5 присваиваете ДопНомер=3,

Добавлено через 1 минуту
Сообщение от alexpro1979
В таблицу цена
У вас нет такой таблицы - Цена
Вопрос: Запрос: Список абонентов компании с указанием номеров их телефонов

Задача:Список абонентов компании с указанием номеров их телефонов, при условии, что эти номера содержат в конце цифру 5.

Помогите пожалуйста!
Ответ:
Сообщение от DmitryM5
Задача:Список абонентов компании с указанием номеров их телефонов, при условии, что эти номера содержат в конце цифру 5.
Создайте дополнительное поле, которое будет показывать последние цифры номеров:
ПоследнееЧисло:Right([ИмяВашегоПоля];1)

В условии отбора этого поля напишите 5.
Должно сработать.
Вопрос: Бронь номеров

Добрый вечер
Есть следующая таблица:

Как сделать так,чтобы было нельзя бронировать один и тот же номер в один и тот же промежуток времени?
Ответ:
Сообщение от helloguys
Как сделать так,чтобы было нельзя бронировать один и тот же номер в один и тот же промежуток времени?
Сравнивать период новой брони номера с другими записями в таблице "Бронювання" - если найдутся брони у которых время пересекается с временем новой брони, то запрещать такую бронь.

В общем случае можно сделать так:
- в форме получить период новой брони
- сделать кнопку которая добавляет запись в таблицу "Бронювання"
- при нажатии кнопки, сделать проверку периода новый брони номера с периодами всех броней на данный номер, которые уже имеются в таблице

Добавлено через 42 секунды
Сообщение от helloguys
Есть следующая таблица:
А вообще прикрепляйте БД в *.rar вложении, так проще.
Вопрос: БД гос. номеров машин в различных написаниях (англ. и русские буквы)

Уважаемые форумчане! Подскажите пожалуйста... Есть база данных гос номеров машин в различных написаниях ( англ. и русские буквы). Есть какой нибудь способ запроса для поиска среди этих номеров , чтоб не учитывать латиница или кириллица. Вариант только по номеру не поможет, слишком много совпадений выдает

Добавлено через 15 минут
Уточнение: имеется список номеров которые необходимо проверить и они все на латинице и нужно при проверке учитывать и ту и ту раскладку
Ответ:
Сообщение от bax_tang
разрешены 12 букв кириллицы, имеющие графические аналоги в латинском алфавите — А, В, Е, К, М, Н, О, Р, С, Т, У и Х
а я о чем говорю? Нет тут никаких Л, Ц, и Э.

Добавлено через 2 минуты
Или ты на номере в силах разглядеть, кириллическая это О или латинское O ???
Вопрос: Как перераспределить порядковый номер в перечне записей?

ИМЕЕТСЯ
Таблица-справочник со следующими полями:
- id;
- порядковый номер записи (пример 1,2,3,..., n);
- наименование записи;

Справочник используется в базе данных. Необходимо чтобы "наименование записи" имело определённую последовательность.
Последовательность обеспечивается по средствам сортировки поля "порядковый номер записи".

СИТУАЦИЯ
Составлен справочник (исходный: вариант-0).
Справочник используется в других таблицах. В процессе работы возникает необходимость добавить запись в середину списка и тем самым перераспределить порядковые номера, которые ниже добавленной записи.

ВОПРОС.
Как решить данную задачу?
Т.е. перенабивать новые порядковые номера вручную, думаю ненормально.
Или есть другой поход к данной ситуации?
Ответ:
Сообщение от Anvano
просто проапдейтить поле с порядковым номером на ORD = ORD +1 у всех записей
как-то не думала никогда о таком варианте