|
|
|
SELECT запрос, помогите пожалуйста, до утра надо разобраться.
|
|||
|---|---|---|---|
|
#18+
Вобщем нужно вывести список товаров, которые хранятся на каждом складе. Хотел сделать это с помощью конструкции: SELECT Имя FROM Товары WHERE NOT EXISTS (; SELECT id FROM Склады WHERE NOT EXISTS(; SELECT * FROM Хранение WHERE (Хранение.склад=Склады.id) AND (Хранение.Товар=Товары.id))) Т.е. должен выбирать Товары, для которых нет Складов, таких, чтобы на них не находился наш товар. Но к сожалению FoxPro не хочет обрабатывать больше двух вложенных SELECT'ов, ругается с ошибкой. Какой альтернативный вариант есть? Выручите пожалуйста, пытаюсь доделать курсовую человеку, которого отчислить могут если не сдаст :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 05:03 |
|
||
|
SELECT запрос, помогите пожалуйста, до утра надо разобраться.
|
|||
|---|---|---|---|
|
#18+
Может, временную таблицу сделать, куда результат самого внутреннего запроса скидывать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 06:08 |
|
||
|
SELECT запрос, помогите пожалуйста, до утра надо разобраться.
|
|||
|---|---|---|---|
|
#18+
Итак, имеем: Товар.id Товар.Имя Склады.id Хранение.Склад Хранение.Товар Надо: "вывести список товаров, которые хранятся на каждом складе" Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 06:27 |
|
||
|
SELECT запрос, помогите пожалуйста, до утра надо разобраться.
|
|||
|---|---|---|---|
|
#18+
2 w3d К сожалению выводит все товары (т.е. не только те, что на всех складах присутствуют), да ещё и по несколько раз, для каждого склада на котором присутствует, т.е. по сути всё содержимое таблицы "Хранение" вываливает. 2 ivenhoe Я бы так и сделал, но внутренний запрос включает в себя условия, использующие данные из внешних запросов, т.е. временную таблицу создать не получится. По-крайней мере я не знаю как, возможно варианты есть, я их могу опробывать, главное чтоб работало как-то... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 06:39 |
|
||
|
SELECT запрос, помогите пожалуйста, до утра надо разобраться.
|
|||
|---|---|---|---|
|
#18+
Покажи таблички, или вышли в мыло в профиле ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 07:23 |
|
||
|
SELECT запрос, помогите пожалуйста, до утра надо разобраться.
|
|||
|---|---|---|---|
|
#18+
Собственно говоря, твоя задача: "список товаров, которые хранятся на каждом складе" - это и есть таблица Хранение. Уточни, что именно надо получить в результате. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 07:25 |
|
||
|
SELECT запрос, помогите пожалуйста, до утра надо разобраться.
|
|||
|---|---|---|---|
|
#18+
Подсчитай количество складов для каждого товара и сравни с общим количеством складов. Т.е. выполняешь в 2 этапа: 1) Подсчет общего количества складов Код: plaintext 1. 2. 2) Определяю товары, которые есть на ВСЕХ складах Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 16:14 |
|
||
|
SELECT запрос, помогите пожалуйста, до утра надо разобраться.
|
|||
|---|---|---|---|
|
#18+
ВладимирМПодсчитай количество складов для каждого товара и сравни с общим количеством складов. Т.е. выполняешь в 2 этапа: 1) Подсчет общего количества складов Код: plaintext 1. 2. 2) Определяю товары, которые есть на ВСЕХ складах Код: plaintext 1. 2. 3. 4. 5. Жаль поздно уже..., но спасибо в любом случае, это именно то, что было нужно, сам не догадался почему-то. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2006, 20:22 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=33601033&tid=1592128]: |
0ms |
get settings: |
6ms |
get forum list: |
12ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
183ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 262ms |
| total: | 520ms |

| 0 / 0 |
