Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

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]

Подробнее!
Какой сервер?
Какие таблицы?
Какие поля анализировать?
В каком виде хотим получить результат?


Наверх

Титульная страница Поиск, карта сайта Написать письмо