|
|
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
есть вот такая ллабуда Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. она создана в конструкторе запросов в режиме SQL удаляю pic, из этого текста, запускаю - работает(в данном случае пофигу , чо выдает) далее в режиме SQL вставляю тоже самоё pic, выдает ошибку не поддерживается выражение объединения нада составить запрос со встроенным запросом , аналогичные уже там есть , но не могу . даже простую таб не могу вставить в чём дело? куда руки прицепить??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 14:50 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
квадратные скобки ]. замени на ) "номер]. AS " --->"номер) AS " ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 14:56 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
во всех местах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 14:57 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
обсолютно поровну делал.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 14:58 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
да и затрахался я менять скобки..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:01 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
попробуй добиться того, чтобы по крайней мере в выражении FROM (а лучше - во всем запросе) не встречались конструкции вида [комитенты отгружено] - имена с пробелами в прямых кавычках. Точно полегчает. Но не сильно, в смысле - не универсально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:11 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
GROUP BY - я так понял ты пытаешся использовать вместо SELECT DISTINCT ... перепиши свои запросы на DISTINCT тогда и код отладить будет проще и читабельней он будет. А если нужен GROUP BY то используй его во внешнем запросе, нафига он нужун в остальных??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:17 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
раз затрахался, то делай сохраненные запросы, а потом своди их воедино ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:18 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
кстати - замечание io - очень шибко хорошее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:22 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
вот как раз та часть, что в скобках - в "сохраненном запросе" хорошо будет жить. как ищ говорит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:25 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
А джойн к pic_у нужон коль груп бай? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:34 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
Я может быть не в тему, но хочу уточнить: ты этот запрос пишешь в модуле или в конструкторе запросов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 15:54 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
какой аксесс? если > 97, то можно заменить [SElect ...]. AS dd на (SELECT ...) AS dd - после этого будет проще в отладке. (кстати наличие конструкции (даже 2-х, как я увидел) опровергает предположение о чисто "конструкторском" происхождении запроса). Но не факт что не станет сильно медленнее (не факт, что так вставленные подзапросы не задают порядок выполнения). если оставить - надо следить за сохранением точки в конструкциях [Select ...]. AS subq после правки в режиме конструктора (аксесс ее может удалять сам, но без нее не считает заключенные в [] запросы) и еще: скопируй текст "работающего" запроса в окно нового запроса. Если он там будет выполняться - то проблема в "фоновом" редактировании аксессом текстов при переключении в режим конструктора. Если нет (сразу откажется) - то у тебя выполняется "не этот запрос" а его некое "компилированное" представление, откуда-то унаследованное и не менявшееся. А текущая версия аксесса не понимает синтаксис, но понимает сохраненную "откомпилированную" версию запроса. (может джеты отличаются, может сервис паки). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 16:16 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
Дело в том, что в конструкторе запросов Access меньше символов воспринимает: Справка из Access'97: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. А в твоем запросе знаков без пробелов 1710, а с пробелами 1859. Может быть в этом проблема. У меня похожее было. Пока запрос не сохранишь или в режиме SQL не посмотришь - все работает. Только сохранил или режиме SQL посмотрел начинается: ругается вообще не потеме и работать не хочет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 16:24 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
наврал (выше) похоже проблема то проста: полное произведение + OUTER (LEft/Right) JOIN (с одной из таблиц) - оно "ни по какому" не поддерживается - ни в конструкторе/ ни в SQL, но сообщения, что интересно, разные. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 16:33 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
Если Аксесс'97 то работать точно не будет конструкция (SELECT ...). AS, для этого его надо сохранить отдельным запросом... Сделать можно всё!!! Только бы знать как... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 17:01 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
опаньки, а так Код: plaintext Сделать можно всё!!! Только бы знать как... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 17:05 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
я бы сделал бы следующим образом... сохранил подзапросы [комитенты отгружено] и dd под этими же именами и из запроса бы их убрал, а потом уже в конструкторе пытался бы привентить енту табличку как надо... ну а потом после успешного прикручивания вернул бы усё обратно... Сделать можно всё!!! Только бы знать как... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 17:09 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
Я сильно в подробности не вдавался тут, но по горькому опыту работы с Ивритом могу сказать, что проблема может быть тривиальной: ребята, если хотите жить с Акцесом (а в прочем, и с другими БД) дружно, не давайте названиям объектов Акцеса (таблицам, формам, запросам и т.д.) имен ни на каком другом языке кроме английского и поостерегитесь в этих именах ставить пробелы, лучше пользоваться т.н. Венгерской записью. И помня свой опыт работы с А2 - не заводите слишком сложных наворотов в одном запросе, лучше их разделить на подзапросы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 21:01 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
спасибо за внимание! постараюсь разъяснить и уточнить( на по порядку , а как мысль идет) во-первых всё ХР. sp1/sp1-sp3 "сохранённые запросы" стараюсь не использовать т.к. по первости их столько наплодил , что теперь не знаю котоый из них используется или блок/форма удалены за ненужностью или в модуле что изменено. конструктор использую только для конструирования запроса далее строку SQL использую в модуле. (хорошо это или плохо - не знаю , надоело плодить запросы..) не встречались конструкции вида [комитенты отгружено] т.е. это для всех языков (иврит и ему аналогичные по письму - особая тема) - русификация офиса ничем не отличается от французикации, итальянизациии т.д. - это по поводу использования только английского. а саму конструкцию - она ведь допустима, значит должна работать. ??? авторGROUP BY - я так понял ты пытаешся использовать вместо SELECT DISTINCT ... перепиши свои запросы на DISTINCT тогда и код отладить будет проще и читабельней он будет. А если нужен GROUP BY то используй его во внешнем запросе, нафига он нужун в остальных??? 1)вполне возможно. приведенный запрос построен в графическом конструкторе переписывать по предложенному варианту возможно, но как это будет преобразованно в графический вид. в графическом виде всё более наглядно. ежели мне надо строку из модуля VBA str="select........." перевести вграфический вид я делаю debug.print str ctrl+G и копирую и вставляю в конструктор запросов в режиме SQL- далее в режим графики .... возможно это изврат......но вспоминать нужен сохраненный запрос или нет меня затрахало. на быстродействие заметно не влияет. 2)как по быстродействию GROUP BY и SELECT DISTINCT ...??? выберу быстодействие автор опаньки, а так FROM pic, движение RIGHT JOIN насколько я в курсе писать незяяя... причём полюбому так конструктор создает . выведет он конечно фигню т.к. связей у pic не прописано. но ежели это сделать с в графике - то всё прокатывает!!! а ежели в режиме sql - хана, даже если [ ,]. заменяешь!!!! авторЯ может быть не в тему, но хочу уточнить: ты этот запрос пишешь в модуле или в конструкторе запросов? пишу в конструкторе, использую в модуле в виде SQL строки. авторя бы сделал бы следующим образом... сохранил подзапросы [комитенты отгружено] и dd под этими же именами и из запроса бы их убрал, а потом уже в конструкторе пытался бы привентить енту табличку как надо... ну а потом после успешного прикручивания вернул бы усё обратно... я это и пытался сделать . pic использую уже чтоб заменить потом на (select....) обычно так и получалось.... попытаюсь для пробы убрать длину... авторпохоже проблема то проста: полное произведение + OUTER (LEft/Right) JOIN (с одной из таблиц) - оно "ни по какому" не поддерживается - ни в конструкторе/ ни в SQL, но сообщения, что интересно, разные. повторюсь - создано конструктором - им же и произведен синтаксический разбор при переходе из грфики в скуэль... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.06.2004, 22:53 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
автор2)как по быстродействию GROUP BY и SELECT DISTINCT ...??? выберу быстодействие DISTINCT наверняка будет быстрей, а GROUP BY используй: 1. во внешнем запросе 2. либо только там где используешь агр. функции типа Sum На мой взгляд 2-й вариант будет быстрее т.к ты используешь JOIN к запросу который уже сгрупприрован, а значит количество записей в сгруппированном запросе будет меньше ----> отсюда следует что объединение будет происходить быстрее автор... FROM pic, движение ... Ты уверен что тебе действительно нужно декартово произведение??? Может тебе на [LEFT|RIGHT] JOIN переправить: Код: plaintext 1. Ну а если тебе нужно декартово произведение попробуй так: Код: plaintext авторFROM pic, движение RIGHT JOIN Правильно заметил Sfagnum, так это дело не пройдет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2004, 09:56 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
авторповторюсь - создано конструктором - им же и произведен синтаксический разбор при переходе из грфики в скуэль... кинь в конструктор 3 любые таблицы (попроще). 2 свяжи INNER, одну оставь несвязанной (или в WHERE). - работает. поменяй INNER на LEFT/RIGHT, прочитай ругательство, и больше не p@#di. повтори это в SQL, прочитай (другое) ругательство еще раз, и принеси публике извинения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2004, 11:13 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
авторкинь в конструктор 3 любые таблицы (попроще). 2 свяжи INNER, одну оставь несвязанной (или в WHERE). - работает. поменяй INNER на LEFT/RIGHT, прочитай ругательство, и больше не p@#di. Так вот я и не p@#du... А то-что конструктор не может этого делать, это как раз и нужно исправлять, я же написал что нужно ручками поработать! Вот что можно сделать с декартовым произведением: Код: plaintext 1. 2. Можно даже такое извращение с JOINами написать: Код: plaintext 1. 2. 3. + нормальный селект (конечно же) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2004, 12:31 |
|
||
|
конструктор запросов .... помогите выжить
|
|||
|---|---|---|---|
|
#18+
2 io найди у себя (выше моего предыдущего поста) взятую мной (в нем, в посте) цитату, не нашел? а почему? "потому что ее там нет" теперь подумай, на чью реплику был мой ответ. если не понял: именно что на приведенную, а стало быть некому другому адресату. Не стоит возбуждаться на реплики другому адресату. Мы разными путями доказывам автору топика одно и то же. Мыр, дружба, жувачка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2004, 13:22 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32547063&tid=1674106]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
174ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
73ms |
get tp. blocked users: |
1ms |
| others: | 252ms |
| total: | 553ms |

| 0 / 0 |
