3 / 3 / 0
Регистрация: 25.06.2015
Сообщений: 50
1

Выбрать записи с автоматически созданными значениями номеров строк

19.11.2016, 14:31. Показов 2209. Ответов 45

Author24 — интернет-сервис помощи студентам
Здравствуйте!
Прошу помощи у форумчан.
Не получается сделать выборку значений автоматически созданных номеров строк (по функции в запросе) и по значению из поля одной из таблиц.
Имеется БД списка литературы по учебной дисциплине (прилагаю).
В ней все литературные источники (таблица "ЛитИст") сопоставлены с номерами тем дисциплины (таблица "Темы").
Литературные источники в отчёте должны объединиться в один список и сортироваться в определённом порядке: сначала законы, потом постановления, потом ... по алфавиту.
Чтобы получить такой список и получить единую нумерацию пришлось использовать функцию Numeration в одном из запросов.
Теперь задача состоит в том, чтобы для каждой темы выбрать номера сформированных строк.
Не могу сообразить, как это сопоставить.
Т.е. нужно узнать, какие номера строк у литературных изданий, чтобы их указать для каждой темы.
Для этого пробовал создать запрос "Темы и список" - но ничего не получилось.

Кроме этого, желательно было бы номера строк источников после выборки по темам дисциплины объединить в одно поле через запятую.
В итоговом запросе желательно получить вид типа:
Тема Номера строк
1 1,2,4,15,21
2 2,3,7,18

Прошу помочь.
Вложения
Тип файла: rar Каталог литературы.rar (49.3 Кб, 9 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.11.2016, 14:31
Ответы с готовыми решениями:

работа со значениями, созданными в цикле
Доброго времени суток!) Подскажите пожалуйста, как работать со значениями, созданными в цикле? То...

Как выбрать записи с одинаковыми значениями из колонки в SQL
Дана таблица table1 с колонками: id, name, surname Необходимо выбрать совпадающие записи из...

Копирование номеров автоматически
Добрый вечер . У меня в документе более 1800 позиций 123456..1800 можно ли сделать что бы...

Заполнение массива значениями автомобильных номеров
Подскажите пожалуйста, как организовать цикл, который сможет по порядку начиная от A000AA, A001AA,...

45
Эксперт MS Access
7413 / 4548 / 296
Регистрация: 12.08.2011
Сообщений: 14,087
03.02.2017, 03:55 41
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от karam_s Посмотреть сообщение
mobile, Вы, наверное, Волшебник!?
ничуть в этом не сомневаюсь
0
3 / 3 / 0
Регистрация: 25.06.2015
Сообщений: 50
16.10.2017, 17:12  [ТС] 42
mobile
По представленной здесь последней базе "КатЛит_20170201_v3.mdb" есть проблема.
Запрос, в котором всё собирается и нумеруется, обрезаются длинные значения у поля "НазИст" (т.е. Название источника). Хотя оно типа "поле Мемо".
В запросе "НомераСтрок" обратите внимание на записи под № 1,2,49,51.
В исходной для этого запроса таблице "ЛитИст" данные содержаться полные.
А вот запрос последние символы обрезает.
Можно как-нибудь это исправить?

Я так понимаю, что запрос "НомераСтрок" берёт данные в запросе "СписокИст", в котором имеется опция группировка.
Я попробовал убрать эту группировку. В результате запрос "СписокИст" перестал обрезать значения.
Но запрос "НомераСтрок" всё равно обрезает - и во временной таблице "NomStr" тоже все обрезается.
Или функция "Numeration" так действует? Что ещё можно поправить?
0
Эксперт MS Access
26807 / 14486 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
16.10.2017, 17:44 43
Обрезка строк идет из запроса СписокИст, в котором есть групировка по мемо-полю. В этом запросе вообще группировки не нужны. Я признаюсь, даже не посмотрел в прошлый раз на этот запрос, просто взял его как источник. Исправьте SQL запроса, удалите оттуда все предложение GROUP BY. Оно там совершенно не нужно, поскольку включает все поля таблицы.
SQL
1
2
3
SELECT ЛитИст.Код, ЛитИст.ОснД, ЛитИст.ДопД, ЛитИст.СтатНА_код, ЛитИст.ДопТ, ЛитИст.НазИст
FROM ЛитИст
ORDER BY ЛитИст.ОснД, ЛитИст.СтатНА_код, ЛитИст.НазИст;
0
3 / 3 / 0
Регистрация: 25.06.2015
Сообщений: 50
17.10.2017, 05:04  [ТС] 44
Спасибо за Ваш отклик.
В запросе СписокИст я убрал группировку. В результате запрос "СписокИст" перестал обрезать значения. Это хорошо.
Но запрос НомераСтрок у меня всё равно обрезает значения.
Может причина в этом запросе?
0
Эксперт MS Access
26807 / 14486 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
17.10.2017, 08:02 45
Да, этот момент я пропустил, каюсь. Посмотрел в НомераСтрок длины, увидел, что больше 255 и не стал сравнивать с оригиналом. Исправляюсь. Выкладываю
Вложения
Тип файла: rar КатЛит_20171017_v31.rar (50.8 Кб, 6 просмотров)
1
3 / 3 / 0
Регистрация: 25.06.2015
Сообщений: 50
17.10.2017, 15:19  [ТС] 46
mobile,
Спасибо огромное!!!
Проверил, всё в норме!
Вам, как мастеру, "респект и уважуха"
0
17.10.2017, 15:19
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.10.2017, 15:19
Помогаю со студенческими работами здесь

Создать стек из номеров записи. Организовать прямой доступ к элементам записи. (цілі, дійсні, комплексні)
Создать стек из номеров записи. Организовать прямой доступ к элементам записи. (цілі, дійсні,...

Как автоматически заполнить поля значениями по-умолчанию?
есть поля для заполнения в форме регистрации как туда заносить значения по-умолчанию? ну грубо...

Работа с файлами. Вывод нечетных строк с указанием номеров строк
#include "stdafx.h" #include "stdlib.h" #include <stdio.h> #include <locale> #include...

Вывести массив номеров строк и массив номеров столбцов, все элементы которых равны только 1 или только 0
Задан размер квадратной матрицы и значения ее элементов (0 или 1). Сформировать и вывести массив...

Выбрать из списка определённый диапазон номеров
Добрый день! Посоветуйте как из списка, состоящего из цифр, выбрать заданный диапазон цифр? На...

Сформировать массив номеров строк, не имеющих нулевых элементов. Вычислить сумму элементов остальных строк
Всем доброго времени суток. Помогите решить, кому не сложно. Так же, если можно блок схему...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
46
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru