|
17 / 17 / 6
Регистрация: 30.04.2016
Сообщений: 227
|
|||||||||||
База данных. Выборка записей со спаренными значениями15.06.2016, 20:31. Показов 803. Ответов 8
Метки нет (Все метки)
Столкнулся с не тривиальной задачей.
Есть таблица, содержащая данные о книгах. Среди прочей рутины в записях содержится информация о соответствии классов. То есть для какого класса учебник (поле PrchnUchKlass).
Как настрочить пару новых условий в SELECT я представляю. Затык чисто логический - как такие учебники считать? Как в том мультфильме - то ли птица, то ли зверь?)) Нужны идеи общественности. Рад буду услышать все идеи и мысли на этот счет. Как бы Вы вышли из такой ситуации. ----------------- Двойник темы поднят в VB.NET, но палкой прошу не тыкать за это. Просто прописался там и не подумал сразу, что форум огромный)).
0
|
|||||||||||
| 15.06.2016, 20:31 | |
|
Ответы с готовыми решениями:
8
Выборка записей случайным образом из базы данных База данных. Выборка записей со спаренными значениями База данных из записей |
| 16.06.2016, 08:21 | ||
|
Все зависит от того какую логику ты поддерживаешь. Если по простому, то в твоем случае лучше делать шаблон типа -КЛАСС-. Например: -2-, -3-, -10-11-.
0
|
||
|
Zero day
|
|
| 16.06.2016, 09:21 | |
|
Как я понимаю, проблема в использовании данных по классам? Но, действительно, не понятно, 2(3) - это для какого класса и чем это отличается от 3(2-3)?
Как вариант, можно вынести данные по классам в отдельную табличку. Получится отношение "учебник-класс", как многие-к-многим. По такой табличке можно будет считать учебники. Более того, в таблицу кроме номера учебника и класса можно вынести еще данные и посчитать, например, сколько книг, рассчитанных на 2 года (2-3) у второклассников, а сколько у третьеклассников, ну или что-нибудь еще полезное.
1
|
|
|
17 / 17 / 6
Регистрация: 30.04.2016
Сообщений: 227
|
|
| 16.06.2016, 10:36 [ТС] | |
|
Во-первых всем огромное спасибо.
Затык именно в этом и есть - в организации взаимосвязей учебников с параллелями. Точнее в том, что на выходе от программы требуется получить ряд отчетной документации. И один из таких документов требует показать цепочку для всех учебных предметов в пределах каждой параллели: Кол-во учеНиков >> Кол-во имеющихся учеБНиков >> Кол-во недостающих учеБНиков >> Кол-во учеБНиков, требующих обновления Из-за этого вопрос и поднялся, как считать учебник в рамках одной параллели, если он имеет прямое отношение к нескольким. То есть вопрос в первичной организации данных, для ее последующего анализа. Причем, на первый взгляд, вводные немного противоречат поставленной итоговой задаче - смешано квадратное с зеленым)) Поднял на уши несколько библиотекарей и завучей)). Решение принял такое:
То есть зашел, так сказать, через зад )))))) Не знаю интересны эти мысли в слух кому или нет, но мне порой любопытно, как решаются те или иные заковыристые задачи. Поэтому, как только данный кусок проги загудит, сразу же отпишусь - что и как. Но мне уже видится данный алгоритм рабочим.
0
|
|
|
Zero day
|
|
| 16.06.2016, 12:51 | |
|
Идея хорошая. А такой вариант не вариант?
Создаем каталог доступных учебников. Это исходная таблица, держим всю информацию про учебник (автор, страницы, издатель и т.д.), добавляем и удаляем при необходимости. Создаем реестр наличия учебников. Одна запись - один учебник (книг не так уж и много как мне кажется, + у всех них есть библиотечный номер или вроде того, который можно тоже использовать). Реестр делаем примерно таким образом: суррогатный_ПК|каталожный номер учебника|текущий год|учебник_выдан|выдан_в_класс|учебник_ возвращен По реестру будет видно, какой учебник выдан, а какой остался лишним, в какой класс он выдан, вернулся ли учебник (или может его потеряли или выкинули), + можно посчитать сколько всего есть и каких учебников. Если будут закупки или выбраковки, то в реестр вносятся новые книги или выкидываются старые. Разумеется полей можно добавить или что-то вынести в отдельные таблички.
0
|
|
|
17 / 17 / 6
Регистрация: 30.04.2016
Сообщений: 227
|
|
| 16.06.2016, 13:56 [ТС] | |
|
Meridian21
Тут, уверен, любой вариант - вариант. Просто так сложилось, что о существовании государственного перечня учебников я узнал под самое завершение проекта (на тот момент я был в этом почти уверен - наивность блин) .Изначально предполагалась ручная набивка информации о библиотечном фонде учебников. И, в принципе, было уже почти все готово для формирования отчетной части: и функционал формирования учебного года (отражающего ежегодную текучку классов), формирование взаимосвязей классов с учителями, введены в работу модули формирования карточек учебников с указанием количества, сумм затрат, авторов, издателей и т.д., выдачи и возврата учебников, списания учебников... Системой отслеживания и напоминания о задолженностях. Восьмиколенная система настроек и тд. и т.п. И, самое главное, - БАЗА. За три месяца скрипения мозгами все было прилажено и подогнано друг к другу так, что лучше не нужно. И тут краем уха услышал: "...этот учебник исключен из перечня..." Начал искать и нашел таки, на свою голову))) Вещь, надо отметить, конечно полезная, при определенном подходе. Но вот такие спаренные записи дали понять - не все еще кончено)) А учебников в перечне - больше тыщщи только в основном рекомендуемом списке. Еще специализированные и затрагивающие национальные интересы. И любой завтра могут купить. Об одном сегодня еду и думаю: Если б все это уже не было готово, а началась бы постановка задачи именно с Перечня. То я, судя по всему, не догадался бы, как это реализовать. Только имея уже на выходе некоторые результирующие данные, возможно обработать данные исходные. Такой вот какой-то парадокс случился.
0
|
|
|
Zero day
|
|
| 16.06.2016, 14:25 | |
|
AlexNorton, да уж. Как-то получилось, что задача решалась, действительно, задом на перед))
Но кстати, думаю, если бы сразу было известно про перечень, то решение задачи шло с начала и проще было бы. Да и сейчас, если время позволяет, можно допилить схему отталкиваясь от перечня. Он идет, как основной источник, как исходный каталог, а на него уже можно повесить что угодно. Но вообще странно, должна была быть сразу информация в ТЗ о перечне и о том, что все танцы от него идут, а не с потолка учебники берутся.
0
|
|
|
17 / 17 / 6
Регистрация: 30.04.2016
Сообщений: 227
|
||
| 18.06.2016, 20:49 [ТС] | ||
Приходит сверху указка - отчитаться по таким-то позициям, они отчитались и живут себе дальше. А программку начали разрабатывать, чтоб от бешеного ценника 1С уйти.
0
|
||
| 20.06.2016, 03:29 | |||
|
Добавлено через 5 минут
0
|
|||
| 20.06.2016, 03:29 | |
|
Помогаю со студенческими работами здесь
9
ОБНОВЛЕНИЕ ЗАПИСЕЙ БАЗА ДАННЫХ
База данных на основе массива записей: добавление, удаление, поиск записей Файлы записей: База данных Напитки Файлы записей: база данных о сотрудниках фирмы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536
Одним из. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|