|
|
|
Проблема с вложенным запросом.
|
|||
|---|---|---|---|
|
#18+
Проблема с вложенным запросом. В общем ситуация такая. Есть большой запрос из которого получается маленькая таблица. Потом мне этот запрос нужно будет использовать далее. Но самое не приятное что из этого запроса мне еще кое что нужно выбрать. Примерно так. Select zapros.* , (select zapros2.pole1 from zapros as zapros2 where zapros2.pole1 =zapros.pole2) from (Select * from table1) as zapros , table 1 ,table 3 ,table Но так не получается говорит что типа не может найти таблицу zapros, Как справиться с этой бедой. У меня сейчас работает просто сохранят zapros в таблицу и потом с ней работает. Но это на мой взгляд не очень эффективно. Посоветуйте что-нибудь . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 08:35 |
|
||
|
Проблема с вложенным запросом.
|
|||
|---|---|---|---|
|
#18+
Вложенный запрос в квадратные скобочки и точку за второй поставить \\r /topic/31358 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 09:06 |
|
||
|
Проблема с вложенным запросом.
|
|||
|---|---|---|---|
|
#18+
Вот запрос не получаеться в квадратные скобки запихнуть, может по тому что я в VB это все делаю.. Он выдает ошибку типа нельзя использовать скобки, ставиш квардратные тоже ошибку дает... ____________________________________________________________ SELECT sysb.`Код Дистребьютера`, sysb.`Код Квалификации`, (SELECT COUNT(x.`Код Дистребьютера`) FROM sysb AS x WHERE x.`Код Квалификации` >= Премия.`Код квалификации Уровня условия` AND x.`Код Дистребьютера` IN (SELECT x1.`Код Дистребьютера` FROM sysbAS x1 WHERE x1.`Код Спонсора` = sysb.`Код Дистребьютера`)) AS `Удовлетворяют условию` FROM [SELECT Дистребьютеры.`Код Дистребьютера`, Дистребьютеры.`Код Спонсора`, (SELECT COUNT(x.`Код Дистребьютера`) FROM Дистребьютеры AS x WHERE x.`Код Спонсора` = Дистребьютеры.`Код Дистребьютера`) AS `Число членов первой линии`, (SELECT SUM(`Расход Магазины`.Количество * Товары.Баллы) FROM `Расход Магазины`, Товары WHERE Товары.`Код Товара` = `Расход Магазины`.`Код Товара` AND Дистребьютеры.`Код Дистребьютера` = `Расход Магазины`.`Код Дистребьютера`) AS LO, (SELECT SUM(`Расход Магазины`.Количество * Товары.`Дистрибьюторская Цена`) FROM `Расход Магазины`, Товары WHERE Товары.`Код Товара` = `Расход Магазины`.`Код Товара` AND Дистребьютеры.`Код Дистребьютера` = `Расход Магазины`.`Код Дистребьютера`) AS LO_SOM, (SELECT SUM(RM.Количество * TV.Баллы) FROM `Расход Магазины` AS RM, Товары AS TV WHERE TV.`Код Товара` = RM.`Код Товара` AND RM.`Код Дистребьютера` IN (SELECT x.`Код Дистребьютера` FROM Дистребьютеры AS x WHERE x.LFT >= Дистребьютеры.LFT AND x.RGT <= Дистребьютеры.RGT)) AS LGO, (SELECT SUM(RM.Количество * TV.`Дистрибьюторская Цена`) FROM `Расход Магазины` AS RM, Товары AS TV WHERE TV.`Код Товара` = RM.`Код Товара` AND RM.`Код Дистребьютера` IN (SELECT x.`Код Дистребьютера` FROM Дистребьютеры AS x WHERE x.LFT >= Дистребьютеры.LFT AND x.RGT <= Дистребьютеры.RGT)) AS LGO_SOM, (SELECT `Система квалификаций`.`Код Квалификации` FROM `Система квалификаций` WHERE (SELECT SUM(`Расход Магазины`.Количество * Товары.Баллы) FROM `Расход Магазины`, Товары WHERE Товары.`Код Товара` = `Расход Магазины`.`Код Товара` AND Дистребьютеры.`Код Дистребьютера` = `Расход Магазины`.`Код Дистребьютера`) >= `Система квалификаций`.`Личный оборот, очков (минимум)` AND (SELECT SUM(RM.Количество * TV.Баллы) FROM `Расход Магазины` AS RM, Товары AS TV WHERE TV.`Код Товара` = RM.`Код Товара` AND RM.`Код Дистребьютера` IN (SELECT x.`Код Дистребьютера` FROM Дистребьютеры AS x WHERE x.LFT >= Дистребьютеры.LFT AND x.RGT <= Дистребьютеры.RGT)) >= `Система квалификаций`.`Лично-групповой оборот, очков(минимум)` AND (SELECT SUM(RM.Количество * TV.Баллы) FROM `Расход Магазины` AS RM, Товары AS TV WHERE TV.`Код Товара` = RM.`Код Товара` AND RM.`Код Дистребьютера` IN (SELECT x.`Код Дистребьютера` FROM Дистребьютеры AS x WHERE x.LFT >= Дистребьютеры.LFT AND x.RGT <= Дистребьютеры.RGT)) <= `Система квалификаций`.`Лично-групповой оборот, очков(максимум)`) AS `Код Квалификации` FROM Дистребьютеры ]. AS sysb, `Дистребьютеры` AS dd, Премия WHERE dd.`Код Дистребьютера` = sysb.`Код Дистребьютера` AND Премия.`Код квалификации которой выдаеться` = sysb.`Код Квалификации` ORDER BY sysb.`Код Дистребьютера ` ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 10:25 |
|
||
|
Проблема с вложенным запросом.
|
|||
|---|---|---|---|
|
#18+
Вот такя вот проблема ее бы не было если бы изночально впервом запросе можно было подсчитать количество дистребьютеров удовлетворяющих уловию. таблици премии ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 11:28 |
|
||
|
Проблема с вложенным запросом.
|
|||
|---|---|---|---|
|
#18+
Ну и на хрена в аксесе такие запросы писать? Такое ощущение, что человек пришел непонятно с какой СУБД, где нет ни джойнов, ни вьюх (сохраненных запросов) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 11:32 |
|
||
|
Проблема с вложенным запросом.
|
|||
|---|---|---|---|
|
#18+
Хорошо как тогда программно из Vb создать запрос ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 13:11 |
|
||
|
Проблема с вложенным запросом.
|
|||
|---|---|---|---|
|
#18+
Я по чему спрашиваю, потому что делая в ACCESS вложженные запросы все нормально работает... А так на прямую нифига не пашет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 13:14 |
|
||
|
Проблема с вложенным запросом.
|
|||
|---|---|---|---|
|
#18+
Какая версия аксеса? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 13:17 |
|
||
|
Проблема с вложенным запросом.
|
|||
|---|---|---|---|
|
#18+
ACCESS 2000 только мне нуна из VB создать запрос ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.04.2004, 13:22 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32496973&tid=1675044]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
184ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
| others: | 248ms |
| total: | 551ms |

| 0 / 0 |
