|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Добрый день! Помогите сделать нумерацию строк для такого запроса: Код: sql 1. 2. 3.
Если запрос обращается только к 1 таблице я знаю как нумерацию сделать, а вот когда нужно к нескольким таблицам обращаться - не получается. Вот этот запрос с нумерацией с обращением к 1 таблице. (в поле "Маркировка" могут быть повторяющиеся значения) Код: sql 1. 2. 3. 4. 5.
... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2016, 12:39 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Для начала записи надо как-то упорядочить (отсортировать), а уж потом нумеровать.(определитесь с критерием) ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2016, 14:56 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
прошу не читать сообщение ... |
|||
:
Нравится:
Не нравится:
|
|||
11.10.2016, 14:57 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
что никто не решал проблему нумерации строк в сложных запросах? ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2016, 14:53 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Sergey8969...что никто не решал проблему нумерации строк в сложных запросах?... А нафига это надо? Если нужно нумеровать строки, то для этого можно создать в таблице поле - №пп и в нем производить нумерацию. Если будут добавляться новые записи, то № каждый раз будут меняться, запись в запросе, которая была 4-й может стать 3-й или 5-й. Обычно производят сортировку по одному или нескольким полям. Хоть и видел примеры. где именно в запросе производится нумерация, но ни когда этим не пользуюсь. Типа - Баловство это не нужное. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2016, 15:04 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Лапух, 1) Если я добавлю поле с номером в таблицу, то при применении сортировки по какому-то из полей вся нумерация собьется. Гибкости нет никакой. Мне нужно сначала задать по какому полю сортировать, а затем произвести нумерацию отсортированных записей. 2) Число строк в запросе может не соответствовать числу строк в таблицах. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2016, 15:55 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Sergey8969, На мой взгляд нумерация нужна только в отчете, типа для печатного документа, но вот там как раз и можно задать № п/п в свободном поле, а в запросе считаю это не нужным. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2016, 16:03 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Sergey8969что никто не решал проблему нумерации строк в сложных запросах?ЛапухА нафига это надо? Уж если ооочень хоца то как-то так: (только после исправлений или добавлений в таблицах-источниках запроса запускать ф-цию/или сделайте из нее процедуру/ по новой) Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.10.2016, 16:25 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Кстати, апдейт рекордсета в цикле будет работать в несколько раз быстрее, если цикл обернуть в BeginTrans - CommitTrans. В этом случае измененная запись не выгружается на диск после каждой строки, а только в конце все скопом записывается. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2016, 09:31 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
MrShinКстати, апдейт рекордсета в цикле будет работать в несколько раз быстрее, если цикл обернуть в BeginTrans - CommitTrans. В этом случае измененная запись не выгружается на диск после каждой строки, а только в конце все скопом записывается. прошу прощения, что встреваю... Объясните пожалуйста написанное выше... Или направление, в каком поискать эту информацию. Я такого не знал. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2016, 19:02 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Игортан, Вот здесь хорошая статья по повышению производительности Акса, а вот здесь в п.10 упоминается о рекордсетах и транзакциях. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2016, 06:01 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
MrShin, спасибо за ссылки. Буду разбирать, меня в последнее время этот вопрос и интересовать начал , а тут на ловца и зверь бежит... ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2016, 18:25 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
В общем, примерно то, что я хотел можно сделать так: Код: sql 1. 2. 3.
Такой запрос позволяет ввести нумерацию при обращении к нескольким таблицам. Теперь проблема как этот запрос в код vba запихать. В Access сам запрос с таким sql кодом работает, а вот когда пытаюсь запихать это выражение в vba, то появляется "error: expected: end of statement" Код: vbnet 1. 2. 3.
В чем проблема я примерно понимаю: ему не нравится, что функции DCount и CStr в общем тесте запроса записаны без разделителей, но если добавить разделители - тоже ничего хорошего: "Invalid use of null". Как бы мне заставить данный код работать без жестких извращений? ) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 11:15 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Sergey8969, Кавычки внутри выражения продублируйте или замените на одинарные ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 11:19 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
MrShin, точно, ошибка в кавычках, спасибо. Только проблемы не закончились. Приведу упрощенный пример.. Код: vbnet 1. 2.
При выполнении кода в форме, в контроле subform появляется пустой запрос с полем "№". А если открыть сам запрос "Qx", то там уже есть значения в поле "№". В чем тут дело? me.requery, me.refresh, me.subform.requery не помогают. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 12:42 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Sergey8969, Возьмите № в квадратные скобки: [№] и лучше не использовать в такие символы в запросах. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 12:53 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
MrShin, и снова спасибо) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 13:05 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Sergey8969...Только проблемы не закончились... И не закончатся, если Вы будете использовать для нумерации [ID_инструмент] (если это ключ-счетчик) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 14:00 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
sdkuИ не закончатся, если Вы будете использовать для нумерации [ID_инструмент] Да должно нормально работать до тех пор, пока не понадобится сортировка, отличная от [ID_инструмент], там же DCount используется, а не значение счетчика. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 14:04 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
ЛапухНа мой взгляд нумерация нужна только в отчете, типа для печатного документа, но вот там как раз и можно задать № п/п в свободном поле, а в запросе считаю это не нужным. Sergey8969, я полностью согласен с коллегой. Вы так и не ответили, зачем вам нумерация именно в запросе? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 14:39 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
MrShinДа должно нормально работать до тех пор, пока не понадобится сортировка, отличная от [ID_инструмент], там же DCount используется, а не значение счетчика.Это и подразумевалось ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 15:09 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Анатолий ( Киев ), Да бывает она нужна. Например при экспорте данных в Эксель, ну или в той же форме строки должны быть пронумерованы. Вечно приходится извращаться с подобными запросами из-за отсутствия элементарного аналога ROWNUM. В самих запросах иногда нужно сравнивать разные строки или выделять диапазоны из середины, когда TOP не достаточно ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 15:14 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Анатолий ( Киев )ЛапухНа мой взгляд нумерация нужна только в отчете, типа для печатного документа, но вот там как раз и можно задать № п/п в свободном поле, а в запросе считаю это не нужным. Sergey8969, я полностью согласен с коллегой. Вы так и не ответили, зачем вам нумерация именно в запросе? Да в принципе, наверное, могу я обойтись без нумерации. Я просто не думал, что это так проблематично) Есть у меня форма для отображения инструмента в базе склада инструмента. Эта форма может выдавать информацию об инструменте через различные запросы (с применением фильтров, перекрестных запросов и прочего). Нумерацию я хотел добавить в эти запросы просто для того, чтобы было видно сколько позиций выдает тот или иной запрос. Знаю, что можно и иначе это реализовать, но хотел именно так. Не знал, что это вызовет столько сложностей) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 16:44 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
sdkuMrShinДа должно нормально работать до тех пор, пока не понадобится сортировка, отличная от [ID_инструмент], там же DCount используется, а не значение счетчика.Это и подразумевалось Если понадобится другая сортировка, то изменю запрос соответственно ) ... |
|||
:
Нравится:
Не нравится:
|
|||
20.10.2016, 16:46 |
|
нумерация строк в сложном запросе
|
|||
---|---|---|---|
#18+
Sergey8969то изменю запрос соответственно Ну попробуйте изменить сортировку, чтобы первым шел тип инструмента - не уникальное поле. Ничего не получится с нумерацией. Отсортировано должно быть при таком способе только по уникальному полю. Всегда злюсь на разработчиков Акцесса из-за отсутствия этой фичи. ... |
|||
:
Нравится:
Не нравится:
|
|||
21.10.2016, 06:04 |
|
|
start [/forum/topic.php?fid=45&msg=39330871&tid=1613066]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 153ms |
0 / 0 |