С Новым годом! Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 12.02.2015
Сообщений: 9

Адаптировать SQL запрос в запрос для access

12.02.2015, 17:12. Показов 3026. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста:
имеется вот такой рабочий запрос созданный в exel. но так как Exel перестал вывозить разросшиюся базу перевозим все на access, но вот встала проблема в перевода запросов из qsl на язык запросов access. прошу вашей помощи.
SQL
1
SELECT ReportID,GROUP_CONCAT(IF(IDevice LIKE '%KB%',RIGHT(IDevice, 11),NULL)) FROM `aida`.`Item`   INNER JOIN (SELECT id, MAX(`RDateTime`) FROM `aida`.`Report` GROUP BY (`RHost`)) groupedtt ON Item.ReportID=groupedtt.id WHERE IPage IN ("Windows Update") GROUP BY ReportID;
Буду очень признателен за помощь.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.02.2015, 17:12
Ответы с готовыми решениями:

Как вызвать SQL-запрос для БД Access?
Доброго времени суток. Подключил к dataGridView таблицу из Access. Вопрос : Как нужно вызывать sql-зопрос и что нужно для этого подключить?...

SQL запрос для двух связанных таблиц access
Есть две таблицы "агенты" и "договор", в таблице "агенты" только поле с перечислением агентов, в таблице "договор", кроме всего...

Запрос SQL в Access
Реализовать SQL-запрос таким образом, чтобы в таблице отображались поля «Фамилии», «Имя», «Стипендия», только тех студентов у кого нет...

17
Эксперт MS Access
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
12.02.2015, 18:29
Предполагая, что
1. таблицы называются [Item] и [Report] а не [aida.Item] и [aida.Report]
2. "Windows Update" это название запроса (???) в котором есть поле для выбора IPage
3. Вместо GROUP_CONCAT используем самописную функцию, например часто используемую на этом форуме UnionStr1,
приводим запрос к виду, съедобному для JET SQL
SQL
1
2
3
4
5
SELECT ReportID, UnionStr1(IDevice, IIF(IDevice LIKE '*KB*',RIGHT(IDevice, 11),NULL)) AS DeviceName
FROM [Item]  INNER JOIN 
  (SELECT id, MAX(RDateTime) FROM [Report] GROUP BY (RHost)) groupedtt ON Item.ReportID=groupedtt.id 
WHERE IPage IN (SELECT IPage FROM [Windows UPDATE]) 
GROUP BY ReportID;
Visual Basic
1
2
3
4
5
6
7
8
9
10
Public Function UnionStr1(ID, Fam)
 Static IDOld, FamUnion
 If IDOld <> ID Then
   IDOld = ID
   FamUnion = Null
 End If
 
 FamUnion = (FamUnion + ", ") & Fam
 UnionStr1 = FamUnion
End Function
Если же мои предположения неверны, то объясняйте что есть что.
0
0 / 0 / 0
Регистрация: 12.02.2015
Сообщений: 9
12.02.2015, 18:50  [ТС]
Даже не ожидал что так быстро ответят. Спасибо огромное.
Прошу извинить что не дал пояснений.
[Item] и [Report] да действительно это таблицы имеют связь по полю Id
IPage - это столбец в таблице Item
Windows Update - это значение в колонке IPage

Попробовал.
выдает ошибку.


вот так выглядит структура базы.


Еще запрос просит подключение к базе. Я так понимаю что его нужно еще сделать внутренним запросом.

Огромное спасибо за помощь.
0
 Аватар для UBUNTU
352 / 213 / 42
Регистрация: 04.02.2015
Сообщений: 1,344
12.02.2015, 19:08
ztekem, Это я так понял отчет из программы Aida по состоянию компьютера которое должно попасть в БД?
0
0 / 0 / 0
Регистрация: 12.02.2015
Сообщений: 9
12.02.2015, 19:17  [ТС]
Цитата Сообщение от UBUNTU Посмотреть сообщение
ztekem, Это я так понял отчет из программы Aida по состоянию компьютера которое должно попасть в БД?
Да все правильно. Значит знакомы с тем видом в котором aida все собирает. Тысячи строк с одинаковыми id.
Почти все сделали осталось только сформировать данные по обновлениям и установленным программам.
Обновления склеить только по (квxxxxxx). Установленные программы просто склеить в одну строку.
Так было сделано в exel все получалось красиво.

PS. Еще может знаете как aidu уговорить выдавать кириллицу не вопросительными знаками.
0
Эксперт MS Access
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
12.02.2015, 20:21
Цитата Сообщение от ztekem Посмотреть сообщение
Так было сделано в exel все получалось красиво.
Цитата Сообщение от ztekem Посмотреть сообщение
так как Exel перестал вывозить разросшиюся базу перевозим все на access
раз в екселе уже сделано ПО и получаете приемлемые результаты, то наилучшим выходом, как мне кажется, будет по-прежнему получать/трансформировать/склеивать данные из аиды в екселе, а затем запросом на вставку переносить в таблицы БД. Это не проблема. Акс достаточно уверенно работает с данными из екселя. И автоматизировать этот процесс не сложно. Можно и из самого екселя писать в аксовские таблицы.
0
0 / 0 / 0
Регистрация: 12.02.2015
Сообщений: 9
13.02.2015, 04:31  [ТС]
Цитата Сообщение от mobile Посмотреть сообщение
раз в екселе уже сделано ПО и получаете приемлемые результаты, то наилучшим выходом, как мне кажется, будет по-прежнему получать/трансформировать/склеивать данные из аиды в екселе, а затем запросом на вставку переносить в таблицы БД. Это не проблема. Акс достаточно уверенно работает с данными из екселя. И автоматизировать этот процесс не сложно. Можно и из самого екселя писать в аксовские таблицы.
Необходимость в переезде на аск вызвана тем что запрос на обновление данных в exel идет почти 3 часа. тоже самое акс делает за 15-20 секунд. Для полного переезда на акс нужно всего лишь адаптировать два запроса.
1 который написал выше. (он в аксе отрабатывается на миллисекунды) exel его кушает минимум за 10-15 минут.
2. это тоже самое но по другому значению поля. Там не нужно вырезать текст, а просто склеить все что есть.

Помогите пожалуйста с запросами. Скоро сроки подачи отчета. хотелось бы уже результаты выводить не часами ждать зависший комп. а на раз два три.
0
Эксперт MS Access
 Аватар для alvk
7459 / 4592 / 302
Регистрация: 12.08.2011
Сообщений: 14,380
13.02.2015, 09:20
Цитата Сообщение от ztekem Посмотреть сообщение
вот так выглядит структура базы.
Это не структура базы
0
 Аватар для UBUNTU
352 / 213 / 42
Регистрация: 04.02.2015
Сообщений: 1,344
13.02.2015, 09:52
ztekem, Есть в Интернете готовая программа написана на Visual Basic там целое приложение по такому направлению как у Вас.
0
0 / 0 / 0
Регистрация: 12.02.2015
Сообщений: 9
13.02.2015, 10:26  [ТС]
Цитата Сообщение от alvk Посмотреть сообщение
Это не структура базы


Вот поправил
0
0 / 0 / 0
Регистрация: 12.02.2015
Сообщений: 9
13.02.2015, 10:27  [ТС]
Цитата Сообщение от UBUNTU Посмотреть сообщение
ztekem, Есть в Интернете готовая программа написана на Visual Basic там целое приложение по такому направлению как у Вас.
Это понятно что таких программа куча. но все они универсальные и как правило не полностью удовлетворяют требованиям.

Может кто то поможет с запросом?
0
Эксперт MS Access
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
13.02.2015, 19:46
ztekem, приведите пример входных данных, видимо текстовый файл, и полученные на его основе табличные данные в Access.
0
 Аватар для UBUNTU
352 / 213 / 42
Регистрация: 04.02.2015
Сообщений: 1,344
15.02.2015, 10:27
ztekem, Можно переписать там с исходным кодом.
0
0 / 0 / 0
Регистрация: 12.02.2015
Сообщений: 9
15.02.2015, 17:11  [ТС]
Цитата Сообщение от UBUNTU Посмотреть сообщение
ztekem, Можно переписать там с исходным кодом.

А там это где? Подскажите пожалуйста.
0
 Аватар для UBUNTU
352 / 213 / 42
Регистрация: 04.02.2015
Сообщений: 1,344
15.02.2015, 18:53
На сайтах с исходниками. Ссылки запрещены...
0
0 / 0 / 0
Регистрация: 12.02.2015
Сообщений: 9
16.02.2015, 16:24  [ТС]
все плохо!
запрос удалось адаптировать, но встала проблема. когда запускаешь комплексную выборку нужных данных.
то все вешается на несколько часов. не лучше чем в exel. Так что проблема теперь в другом.
Всем спасибо кто пытался помочь.
0
 Аватар для UBUNTU
352 / 213 / 42
Регистрация: 04.02.2015
Сообщений: 1,344
16.02.2015, 18:14
Лучший ответ Сообщение было отмечено ztekem как решение

Решение

Вот Вам исходник на Visual Basic 6.0 пилите его на здоровье, а вообще возьмите и используйте эту программу переделав под себя. В свое время я много интересного из нее выдернул! Кстати есть версия этой программы продается за хорошие деньги версия более новее.

Обратите внимание на выделенный красным квадратом кусок картинки!
Миниатюры
Адаптировать SQL запрос в запрос для access   Адаптировать SQL запрос в запрос для access  
Вложения
Тип файла: zip 8187.zip (1.90 Мб, 12 просмотров)
1
0 / 0 / 0
Регистрация: 12.02.2015
Сообщений: 9
17.02.2015, 14:00  [ТС]
Цитата Сообщение от UBUNTU Посмотреть сообщение
Вот Вам исходник на Visual Basic 6.0
Спасибо!!! уже начали внедрять!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.02.2015, 14:00
Помогаю со студенческими работами здесь

SQl-запрос Ms access -
Ребят, нужна ваша помощь... Есть база данных, а в ней нужно сделать SQL - запросы: 1)Вывести список преподавателей, чей стаж работы...

SQL запрос в Access
Доброго времени суток! Уважаемые программисты, помогите с SQL запросом в БД Access. БД состоит из 2 таблиц (см. скрины). Запрос...

Запрос в SQL Access
Есть таблица: Необходимо создать запрос на подсчет кол-ва изучаемых предметов. Буду очень благодарен за помощь.

SQl-запрос Ms access
Есть запрос SELECT Работники.ФИО AS ФИО, MIN(Работники.Размер_премии) FROM Работники; Надо, чтобы он выводил фамилию работника с...

SQL запрос к ACCESS
Приветствую! Подскажите, пожалуйста, почему не находит результатов простейший запрос SELECT * from TABLENAME WHERE...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru