powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Работа с таблицей
4 сообщений из 4, страница 1 из 1
Работа с таблицей
    #32753215
Хоттабыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Предположим, что мы создали таблицу присутствия сотрудников на рабочих местах. В этой таблице именами строк являются и фамилии сотрудников, а именами столбцов являются даты. В каждом поле таблицы мы вносим какой-то символ, который показывает, был ли сотрудник на работе или отсутствовал в этот день. (Например, если сотрудник был на работе, то ставиться цифра 8, если болел. То цифра 1, если был в отпуске, то цифра 2 и т.д.) Т.е. мы имеем таблицу, которая является самым банальным табелем, который есть в любой организации.
Из таблицы такого вида командой SELECT мы можем составить любую статистику по отношению к конкретному работнику, т.е. узнать например, болел ли он в данный отрезок времени, сколько дней был в командировке и т.д. Это возможно потому, что SQL работает со строками ( записями)
Если же мы хотим узнать статистику другого вида, которая связана с обработкой столбцов, например узнать имена сотрудников, которые были в командировке в указанный день или количество сотрудников, болевших в этот день, то мы командой SELECT этого сделать не сможем, т.к. команда SELECT ( да и вообще почти все команды работы с таблицами) со столбцами не работают.
Вопрос: что надо делать в таком случае, когда надо сделать выборку по столбцам? Параллельно к данной таблице создавать инвертированную таблицу? Или написать для обработки программу с циклами на другом языке программирования? Или существует какая-либо ещё возможность, которая мне неизвестна?
...
Рейтинг: 0 / 0
Работа с таблицей
    #32753238
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор. команда SELECT ( да и вообще почти все команды работы с таблицами) со столбцами не работают
хм... правда...?
...
Рейтинг: 0 / 0
Работа с таблицей
    #32753258
Фотография Хрен
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ваша таблица неправильно спроектирована. Вы что, каждый день добавляете новый столбец? И что вы собираетесь делать если понадобится хранить доб. информацию типа количества часов? Более разумно ее нормализовать и сделать добавочную таблицу.

create table tabel (
person int, -- ссылка на табельный номер сотрудника
dt date, -- дата к которой относится запись
kind enum('bolen','OK','otpusk','4to tam esche nado'), -- что он делал в этот день
hours int, -- количество отработанных часов в этот день ( это например)
ну тут индексы по вкусу)

вам придется немного больше потрудиться, чтобы распечатать табель в том виде, как его привыкли видеть бухгалтера, зато вы в дальнейшем получите гораздо меньше гемороя с сопровождением и использованием этой информации
...
Рейтинг: 0 / 0
Работа с таблицей
    #32755951
Хоттабыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Работа с таблицей
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]