|
Как обработать такую таблицу 🠗 (Rie 11.11.2013 10:27) | ☑ | ||
---|---|---|---|---|
0
ak799
11.11.13
✎
08:50
|
Есть:
ВРАЧ | ПН | ВТ | СР | ЧТ | ПТ | СБ | ВС Терапевт | 10 | | 12 | | 10 | | Терапевт | 11 | | | | | | Терапевт | | 15 | | | | | Терапевт | | 18 | | | | | Хирург | | | | 12 | | 17 | Хирург | | 11 | | | | | Надо: ВРАЧ | ПН | ВТ | СР | ЧТ | ПТ | СБ | ВС Терапевт | 10 | 15 | 12 | | 10 | | Терапевт | 11 | 18 | | | 18 | | Хирург | | 11 | | 12 | | 17 | Как хитро свернуть запросом? СУММА() как понимаю не подходит. |
|||
1
ak799
11.11.13
✎
08:51
|
ВРАЧ | ПН | ВТ | СР | ЧТ | ПТ | СБ | ВС
Терапевт | 10 | | 12 | | 10 | | Терапевт | 11 | | | | | | Терапевт | | 15 | | | | | Терапевт | | 18 | | | | | Хирург | | | | 12 | | 17 | Хирург | | 11 | | | | | Надо: ВРАЧ | ПН | ВТ | СР | ЧТ | ПТ | СБ | ВС Терапевт | 10 | 15 | 12 | | 10 | | Терапевт | 11 | 18 | | | | | Хирург | | 11 | | 12 | | 17 | |
|||
2
kosts
11.11.13
✎
08:52
|
(0) Чем терапевт от терапевта отличается?
|
|||
3
Cube
11.11.13
✎
08:52
|
Почему два терапевта?
|
|||
4
ak799
11.11.13
✎
08:53
|
(2) ничем. Нужно Хитро свернуть строки. для 3 и 4 терапевта задвинуть строки по колонке ВТ вверх
|
|||
5
Rie
11.11.13
✎
08:53
|
(0) Я так понял, что нужна просто группировка по _всем_ полям. Дабы устранить дубли. Ну или ВЫБРАТЬ РАЗЛИЧНЫЕ.
|
|||
6
1dvd
11.11.13
✎
08:54
|
Только цыклом
|
|||
7
Rie
11.11.13
✎
08:54
|
(4) СОРТИРОВАТЬ с вычисляемым полем.
|
|||
8
ak799
11.11.13
✎
08:54
|
Коллеги суть не в том что два терапевта а в том как обработать. Можно ли запросом сдвинуть так как хочу?
|
|||
9
ak799
11.11.13
✎
08:55
|
(7) - Покажи!!!
|
|||
10
Cube
11.11.13
✎
08:55
|
(8) А почему так
ВРАЧ | ПН | ВТ | СР | ЧТ | ПТ | СБ | ВС Терапевт | 10 | 15 | 12 | | 10 | | Терапевт | 11 | 18 | | | | | Хирург | | 11 | | 12 | | 17 | а не так ВРАЧ | ПН | ВТ | СР | ЧТ | ПТ | СБ | ВС Терапевт | 10 | 18 | 12 | | 10 | | Терапевт | 11 | 15 | | | | | Хирург | | 11 | | 12 | | 17 | ??? Платформа протелепатировать должна? |
|||
11
Rie
11.11.13
✎
08:55
|
(9) Сообщи, по какому критерию упорядочить - покажу.
|
|||
12
Rie
11.11.13
✎
08:59
|
+(11) Я так понял, что тут три задачи.
1. "Убрать" пустые поля - но для этого надо знать, null там или пустая строка. Тут возникает первое вычисляемое поле. 2. СГРУППИРОВАТЬ по полю Врач и вычисляемым в пункте 1 полям. 3. УПОРЯДОЧИТЬ согласно выбранному критерию. |
|||
13
kosts
11.11.13
✎
09:01
|
(8) В принципе можно разработать небольшого монстра. Который свернет как хочется. Но что если вдруг два разных терапевта станут работать в один и тот же день по пол дня. Такой запрос уже ни за правильно не сработает...
|
|||
14
ak799
11.11.13
✎
09:01
|
(12) покажи запрос целиком!!!
Есть таблица в запросе с таблицей "Врачи" например. Что дальше? Выбрать Врач, День ИЗ Врачи.. а дальше? |
|||
15
Cube
11.11.13
✎
09:02
|
(14) Это ты покажи запрос... Телепатов тут нет.
|
|||
16
Rie
11.11.13
✎
09:03
|
(14) Ты сначала таблицу покажи. А то хрен знает, какие там у тебя поля и чем они знамениты. А то писать запросы по неопознанным летающим таблицам - как-то оно не кошерно.
|
|||
17
kosts
11.11.13
✎
09:04
|
Идею такая. Заменить все часы единицей. Сгруппировать по всем полям. Потом сгруппированную таблицу использовать в соединении с первой для суммирования часов...
|
|||
18
Rie
11.11.13
✎
09:05
|
(17) Это, судя по некоторым признакам, расписание. Так что суммировать там нечего. Надо выяснять - есть ли часы приёмные или да ну его на фиг.
|
|||
19
kosts
11.11.13
✎
09:07
|
(17)(18) Но в принципе для реального решения постановка и данные не корректны... Частное решение такое.
|
|||
20
ak799
11.11.13
✎
09:08
|
(18) врачи - назвал условно. Есть такая таблица, нужно добавлять новые строки только если добавить в нужный день нельзя (часы уже есть), Если часы по дню пустые нужно объединять строки.
|
|||
21
ak799
11.11.13
✎
09:09
|
(19) - да решение частное, экзаменацтонное. Как свернуть запросом четыре строки по терапвету в две как я нарисовал?
|
|||
22
1dvd
11.11.13
✎
09:09
|
Имхается мне, что нужно отдельными запросами отбирать каждый день недели и расставлять Номера строк, потом всё соединить воедино
|
|||
23
ak799
11.11.13
✎
09:11
|
ну дайте кто нибудь запрос!
|
|||
24
kosts
11.11.13
✎
09:11
|
(21) У тебя таблица в каком виде дана, как в (0) ?
|
|||
25
Cube
11.11.13
✎
09:12
|
(21) Да это бред. Ты нам свои промежуточные итоги не показывай. Давай то что дано и то что надо получить.
|
|||
26
Rie
11.11.13
✎
09:12
|
(21) Да ты какую-то хрень нарисовал, из которой ничего не понятно - по каким критериям сворачивать. Ясно, что важен Врач. А дальше? Тебя ж о том и спрашивают, а ты изображаешь себя партизана на допросе в гестапо.
Ну и раз задача - экзаменационная... Скока денег? |
|||
27
Cube
11.11.13
✎
09:12
|
(23) Да пожалуйста:
Запрос = Новый Запрос(); |
|||
28
ak799
11.11.13
✎
09:14
|
не знаете, так и скажите, нефиг всякую ерунду писать
|
|||
29
1dvd
11.11.13
✎
09:15
|
(28) да, тут одни профаны сидят. Зря ты сюда зашёл
|
|||
30
Rie
модератор
11.11.13
✎
09:15
|
(28) Вы на вопросы-то - ответьте. Если Вам действительно помощь нужна. А то ведь прикрою ветку - за троллинг с Вашей стороны.
|
|||
31
razlagator
11.11.13
✎
09:16
|
(29) ответь на вопрос из (10) хотябы, будь мужиком б***ть!
|
|||
32
1dvd
11.11.13
✎
09:17
|
(31) Я? откуда я знаю?
|
|||
33
Cube
11.11.13
✎
09:17
|
(28) Я смотрю, ты на своей волне.. Ну-ну, давай-давай...
|
|||
34
Rie
модератор
11.11.13
✎
09:17
|
Видимо, (31)->(28).
|
|||
35
kosts
11.11.13
✎
09:18
|
(23) Ключевое поле для таблицы из (0)
Добавь к своей таблице и сделай группировку по врачу и КП, часы суммируй, должно в принципе сработать. |
|||
36
Cube
11.11.13
✎
09:18
|
(32) Отвечай, когда спрашивают!!! В глаза смотреть, кому сказал?!!!!
|
|||
37
1dvd
11.11.13
✎
09:19
|
(35) И что даст такой ключ?
|
|||
38
Rie
11.11.13
✎
09:20
|
(35) Во-первых, типы данных. Хрен знает, что там у ТС. Во-вторых - NULL. Который забавно себя ведёт. В третьих - см. (14) - неизвестно, какие там у ТС поля.
|
|||
39
kosts
11.11.13
✎
09:21
|
(37) Да, не то написал, думать еще нужно...
|
|||
40
wertyu
11.11.13
✎
09:21
|
(0) ты бы хоть поделился, что за таблица )
|
|||
41
wertyu
11.11.13
✎
09:22
|
(38) пока ТС себя забавно ведёт
|
|||
42
Rie
11.11.13
✎
09:22
|
(39) Не нужно думать пока что. Нужно от ТС дождаться ответа - что ж у него за хрень такая. После этого можно будет думать. А пока - не о чем думать. Разве что гадать.
|
|||
43
Rie
11.11.13
✎
09:23
|
(41) У него на это забавное поведение ещё целых 8 минут есть.
|
|||
44
ak799
11.11.13
✎
09:24
|
таблицу я нарисовал. цифры в колонакх имеют тип перечисление. Это часы. Думаю это все что нужно для решения
|
|||
45
razlagator
11.11.13
✎
09:25
|
(44) вот упертый!
|
|||
46
kosts
11.11.13
✎
09:25
|
(44) Приведи всю задачу целиком, как есть...
|
|||
47
Cube
11.11.13
✎
09:26
|
(44) "Думаю это все что нужно для решения"
Не угадал. Типы остальных колонок тоже надо... |
|||
48
Cube
11.11.13
✎
09:27
|
(44) "цифры в колонакх имеют тип перечисление"
Чё-чё?)))) Прикольно, а можно вопрос - что за изврат? |
|||
49
Skom
11.11.13
✎
09:27
|
(12) "1. "Убрать" пустые поля - но для этого надо знать, null там или пустая строка. Тут возникает первое вычисляемое поле. "
лечится функцией в запросе isnull(<Знач>,0) если поле null, то в таком варианте вернется - 0 |
|||
50
ak799
11.11.13
✎
09:28
|
(49) там могу поставить и NULL и пустую строку
|
|||
51
Wobland
11.11.13
✎
09:28
|
(48) я видал РН типа ОстаткиНаСкладах с ресурсами Размер42, Размер44...
|
|||
52
wertyu
11.11.13
✎
09:28
|
(44) хорошо, теперь объясни, почему например 15 из третьей строки должно попасть в первую, а не во вторую
|
|||
53
Skom
11.11.13
✎
09:29
|
(50) и все же без условий задачи целиком, никто не сможет подсказать.
Я вот не понял чем терапевт отличается от терапевта |
|||
54
Rie
11.11.13
✎
09:29
|
(44) Не надо "нарисовал". Приведи описания _всех_ полей с указанием их типов. Укажи критерии для группировки и сортировки.
|
|||
55
Skom
11.11.13
✎
09:29
|
(48) тогда ты повидал в этой жизни уже все.
|
|||
56
Cube
11.11.13
✎
09:29
|
(54) +100
|
|||
57
wertyu
11.11.13
✎
09:30
|
(53) ты что Терапевта от Терапевта отличить не можешь?
|
|||
58
Cube
11.11.13
✎
09:30
|
(55) Чувствую, ща наверстаю... :D
|
|||
59
Cube
11.11.13
✎
09:30
|
(57) Пошла жара!)))))
|
|||
60
Rie
11.11.13
✎
09:30
|
(50) Да кто ж сомневается-то? Ты куда круче хрень можешь спроворить.
|
|||
61
ak799
11.11.13
✎
09:31
|
(52) потому что 10 меньше 11
|
|||
62
Skom
11.11.13
✎
09:31
|
(55) относится к (51)
|
|||
63
Skom
11.11.13
✎
09:31
|
(57) а-а-а-а ну так бы сразу и сказал ))))))))
че это я, действительно. |
|||
64
Cube
11.11.13
✎
09:32
|
(62) Даже так?))
|
|||
65
Cube
11.11.13
✎
09:32
|
(61) А 12 больше 0 и что?
|
|||
66
Skom
11.11.13
✎
09:33
|
(65) добавлю
0 меньше чем 12 |
|||
67
kosts
11.11.13
✎
09:34
|
(61) Как определить, что одно перечисление больше или меньше другого?
|
|||
68
wertyu
11.11.13
✎
09:34
|
(61) отлично, а теперь объясни почему терапевтов в итоге два, а хирургов только один
|
|||
69
ak799
11.11.13
✎
09:34
|
(67) хорошо, давайте по периоду записи в регистре сведений
|
|||
70
1dvd
11.11.13
✎
09:35
|
(68) ты чо? в поликлинике всегда куча терапевтов и один хирург
|
|||
71
ak799
11.11.13
✎
09:36
|
Новая строка в графике должна добавляться в график только в том случае,
если часы нельзя поместить в уже существующую строку графика для данного врача и дня недели. |
|||
72
Skom
11.11.13
✎
09:37
|
(68) сразу вспоминается анедкот
- а давайте я тогда трактористу в**бу - а тракторист-то причем. - а у нас их все равно двое. |
|||
73
Coldboy
11.11.13
✎
09:37
|
(0) а просто сгруппировать разве не поможет?
|
|||
74
Skom
11.11.13
✎
09:37
|
(73) вся соль в 2 терапевтах и одном хирурге
|
|||
75
Cube
11.11.13
✎
09:38
|
(69) Всё, не позорься. Иди попей чайку, подумай... А завтра приходи... У тебя каша в голове.
|
|||
76
Rie
модератор
11.11.13
✎
09:38
|
Леди и джентльмены! Тут я в затруднении. Формально ТС выполняет требования - то бишь, даёт показания, _формально_ имеющие отношения к задаче. Фактически же... Ну, все грамотные, все понимают... Поэтому - ветку не закрываю. Но переношу в "Юмор" и притапливаю. Если ТС перестанет играть в партизана на допросе у злобных фашистов - верну в тематический раздел и сниму утопление.
Ну и, ak799... Дополнительный вопрос - вот зачем нужен 1Сник, который простенькую задачу не в состоянии самостоятельно сделать? |
|||
77
Skom
11.11.13
✎
09:38
|
Посоны, я кажисть понял, почему терапевтов двое: один мужчина, другой женщина!
|
|||
78
Coldboy
11.11.13
✎
09:39
|
ну они же свернутся, еще по колонкам ПН ВТ и тд или же я что-то не понимают? ведь врач и дни недели будут полями группировки и все же сойдется или я что-то не понимаю.
|
|||
79
wertyu
11.11.13
✎
09:39
|
(77) давай без шовинизма
|
|||
80
Rie
11.11.13
✎
09:40
|
(78) ТС сам не знает, чего хочет. Отсюда и все проблемы.
|
|||
81
Skom
11.11.13
✎
09:41
|
(79) у меня просто другого объяснения нет. хотя только что придумал, например Ориентация)))
(78) если в группирующие поля добавить и дни недели, то вообще фигня получится. |
|||
82
razlagator
11.11.13
✎
09:41
|
(0) сделай 7 запросов, на каждый день
|
|||
83
ak799
11.11.13
✎
09:42
|
(76) гляжу ты сам не можешь выполнить "простенькую задачу". Кроме спама не видел ничего от тебя.
|
|||
84
ak799
11.11.13
✎
09:43
|
Господа начинающие программисты! Вопрос не для вас, а для профессионалов. Не пишите здесь, а то я разочаруюсь и пожалуюсь нургалиеву.
|
|||
85
eklmn
гуру
11.11.13
✎
09:44
|
итить колотить, откуда такие ... берутся?
|
|||
86
Rie
11.11.13
✎
09:45
|
(83) Проспись. И приходи завтра. А пока что - п. 8.
|
|||
87
Torquader
11.11.13
✎
21:36
|
Насколько я понимаю, идея в том, чтобы выкинуть из таблицы пустые строки.
Ну и в чём проблема - сначала перебрать таблицу и для каждого дня (сколько бы их там не было) для каждого врача сделать таблицу, где указать числа, которые в этот день соответствуют этому врачу. Потом для каждой строки найти максимальное число элементов в дочерней таблице. Далее - вывести таблицу заново. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |