![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
sql [D7, Paradox]
PaveLL © (2003-12-10 13:28:00)
Подскажите, как составить запрос, чтобы из трех баз выбрать данные с максимальным значением.
pavell (2003-12-10 14:45:00) [1]
Спасибо всем!
Я правда еще только учусь, поэтому многое не умею.
Владимир, говоришь попробовать с union, попробую.
Что ж будем биться с преподавателями на теоритическом фронте.
Малиновский Владимир (2003-12-10 14:26:00) [2]
Да ладно, в прошедшую молодость, юзал я одну прогру на ФоксПро, складской учет: на каждый склад была своя таблица с позициями хранения. MS DOS, Intel386 - 4MB - forever! Вот там запросы были! Между прочим, в Метрострое до сих пор кое-кто ее юзает.
Alex_Bredin (2003-12-10 14:23:00) [3]
в существование БД с такой структурой верится с трудом
Малиновский Владимир (2003-12-10 14:15:00) [4]
Преподы долбаные! Скажи: "прочитайте что-нибудь по теории реляционных баз данных." Что-нибудь про нормализацию и т.д.
Твой запрос средствами SQL не реализовать. Если только какие-нибудь нестандартные средства языка.
Может, что-нибудь с использованием union
Однако, как узнать, какие таблицы включать в запрос?
Запрос придется строить динамически. Можно предположить, что список таблиц с "авторами" также где-то хранится? Или есть некое соглашение об именах, типа Avt_01, Avt_02...
HSolo (2003-12-10 14:13:00) [5]
> pavell (10.12.03 14:04) [10]
Неужели в задании прямо такое требование и выдвинуто:
>В каждой таблице хранятся книги одного автора
Johnmen (2003-12-10 14:11:00) [6]
>Вованчик © (10.12.03 14:00)
>...а почему не сделать ...И связать 1:М.
Потому, что M:M, и значит надо 3 таблицы...
pavell (2003-12-10 14:04:00) [7]
В институте задания не изменят :-(
Johnmen (2003-12-10 14:00:00) [8]
>pavell
Скажу сразу, резко и честно: полностьюпересмотри структуру БД.
:)
Малиновский Владимир (2003-12-10 14:00:00) [9]
Измените структуры базы, например:
Таблица Avtor
-------------
avtor_id : integer
FIO : string
Таблица Editorial
-----------------
Editorial_id : integer
Name : string
Таблица Book
------------
Book_id : integer
Editorial_id : integer
Name : string
Pages : integer
Таблица Avtor_Book
------------------
Avtor_Book_id
Book_Id
Avtor_id
Связь между таблицами - по соответствующим полям *_id, причем между Book и Avtor - через Avtor_Book, связь типа многие ко многим. И все станет просто...
Таблица
Вованчик (2003-12-10 14:00:00) [10]
> pavell
а почему не сделать две таблицы "Авторы" и "Книги".
И связать 1:М. Все твои проблемы решаться очень быстро ...
:)
Малиновский Владимир (2003-12-10 13:52:00) [11]
Что, четыреста авторов = четыреста таблиц?
pavell (2003-12-10 13:50:00) [12]
Базы локальные.
Задача: Есть несколько таблиц, в которых хранятся списки книг, написанных конкретным автором. В каждой таблице хранятся книги одного автора. Известны фамилии авторов. О каждой книге известно название, издательство и количество страниц. Если книгу написали несколько авторов, то она хранится в таблице каждого из авторов.
С помощью запросов необходимо получить ответы на запросы:
1) указать авторов, имеющих максимальное количество книг;
2) указать названия книг, которые написали максимальное количество авторов;
Малиновский Владимир (2003-12-10 13:32:00) [13]
Что-то я нескромные вопросы задавать стал...
Малиновский Владимир (2003-12-10 13:31:00) [14]
select max(summa) from Table1
select max(price) from Table2
select max(quantity) from Table3
?
Johnmen (2003-12-10 13:30:00) [15]
> Какой сервер?
Paradox :)))))
Малиновский Владимир (2003-12-10 13:29:00) [16]
Подробнее!
Какой сервер?
Какие таблицы?
Какие поля анализировать?
В каком виде хотим получить результат?