Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
16.07.2018, 11:42
|
|||
---|---|---|---|
|
|||
First и Last в запросе по запросу |
|||
#18+
Есть 2 хранимых запроса 1. Q1: Код: vbnet 1.
fDateTime– дата и время. Возвращает все как положено и данные и сортировку 2. Q2: Код: vbnet 1.
First и Last возвращают не то, что должны (т.е. не то что видно по результатам запроса Q1). И очень похоже, что убирая сортировку в Q1, в Q2 я получаю тот же резутьтат. Как такое может быть? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 11:53
|
|||
---|---|---|---|
First и Last в запросе по запросу |
|||
#18+
MikeLedFirst и Last возвращают не то, что должны (т.е. не то что видно по результатам запроса Q1).Правильно. Q2 имеет собственную сортировку, и именно согласно ей и будут выбираться First/Last значения. И в данном конкретном случае сортировка в Q1 вообще лишняя - она будет проигнорирована (и, возможно, вообще не будет выполняться, поскольку будет вырезана построителем плана выполнения) в Q2. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 11:56
|
|||
---|---|---|---|
|
|||
First и Last в запросе по запросу |
|||
#18+
Akina, Получается, что нужный результат я могу получить только создав временную таблицу? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 12:56
|
|||
---|---|---|---|
First и Last в запросе по запросу |
|||
#18+
Никто не знает, что есть для Вас "нужный результат". Вы лучше сформулируйте задачу, а не то, как Вы хотели бы её решать. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 13:04
|
|||
---|---|---|---|
|
|||
First и Last в запросе по запросу |
|||
#18+
MikeLedAkina, Получается, что нужный результат я могу получить только создав временную таблицу? Аа что такое FCODE я бы подумала, что счетчик Код: sql 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 13:05
|
|||
---|---|---|---|
First и Last в запросе по запросу |
|||
#18+
MikeLed, стесняюсь спросить-а какой именно (нельзя получить два результата в одном запросе)результат Вы хотите получить,зачем нужен первый запрос? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 13:16
|
|||
---|---|---|---|
First и Last в запросе по запросу |
|||
#18+
Народ! Скажите,если в запросе не задана сортировка, всегда-ли(по умолчанию)происходит сортировка по GROUP BY? ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 13:34
|
|||
---|---|---|---|
First и Last в запросе по запросу |
|||
#18+
MikeLed...Есть 2 хранимых запроса 1. Q1: ... Да что бы ваших детей так в детском саду и школе называли - Р1 и Р2 ... ( Ребёнок1, Ребенок2... ), как вы безлично обзываете свои детища во время творения запросов. Пацифист-Пофигист наверное , ибо в армию идти не хочет. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 14:23
|
|||
---|---|---|---|
First и Last в запросе по запросу |
|||
#18+
sdkuесли в запросе не задана сортировка, всегда-ли(по умолчанию)происходит сортировка по GROUP BY?Нет, это не MySQL... ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 15:00
|
|||
---|---|---|---|
First и Last в запросе по запросу |
|||
#18+
Я понял так:Вы хотите для каждой группы видеть первую и последнюю запись в группе Это решается подчиненным запросом (почитайте HTLP)-примерно так: создаете запрос(это,как понял,затруднений не вызывает) в котором отображаете первую запись в группе+вычисляемое поле с подчиненным запросом (примерно такой): (SELECT TOP 1 нужноеВамПоле FROM таблица AS t1 WHERE таблица.полеПоКоторомуГруппируетеВглавномЗапросе=t1.этоЖеПоле GROUP BY нужноеВамПоле ORDER BY ОноЖе DESC) в строке групповых операций выбираете: "выражение" ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 15:03
|
|||
---|---|---|---|
First и Last в запросе по запросу |
|||
#18+
sdku, очепятка: HELP а не HTLP ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 15:29
|
|||
---|---|---|---|
|
|||
First и Last в запросе по запросу |
|||
#18+
ПЕНСИОНЕРКА, Нет не счетчик - некий объединяющий код, полученный в результате ряда операций по определенной логике. sdku , Первый запрос - это отсортированный список Второй группирование, в котором хочется видеть и первое занчение поля f1 и последнее значение поля f2 sdku Я хочу видеть записи группы со значениями первой записи в одно поле и последней записи в другом поле Формально видеть надо список групп и список записей в группе (подч. форма или подтаблица) Думал, что используя отсортированный данные в запросе Q1, как источник для запроса Q2. получу желаемое. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.07.2018, 16:35
|
|||
---|---|---|---|
First и Last в запросе по запросу |
|||
#18+
MikeLed, ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.07.2018, 11:14
|
|||
---|---|---|---|
|
|||
First и Last в запросе по запросу |
|||
#18+
sdku, По такому примеру вопросов нет. Но в запросе сортировка д.б. по другому полю (не first), т.е. еще один подзапрос. И сколько такой запрос ( 3 в одном) на 200000 записей будет выполняться? Я поня, что first и lаst в запросах, где источником является друго запрос надо использовать с осторожностью, если вообще стоит это делать :)/ ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.07.2018, 12:29
|
|||
---|---|---|---|
|
|||
First и Last в запросе по запросу |
|||
#18+
Можно попробовать так: Сначала создать запрос вида Код: sql 1.
А затем строите еще один на этом запросе и двух экземплярах таблицы, связанных с запросом LEFT JOIN по паре полей fCode, DateMin первый экземпляр и fCode, DateMax - второй. Если результат устраивает, то всё можно собрать в одном запросе. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
17.07.2018, 13:29
|
|||
---|---|---|---|
First и Last в запросе по запросу |
|||
#18+
MikeLedsdku, По такому примеру вопросов нет. Но в запросе сортировка д.б. по другому полю (не first), т.е. еще один подзапрос. И сколько такой запрос ( 3 в одном) на 200000 записей будет выполняться? Я поня, что first и lаst в запросах, где источником является друго запрос надо использовать с осторожностью, если вообще стоит это делать :)/Вы бы выложили БД с четким объяснением Ваших "хотелок" и получили бы конкретный ответ-заниматься "вангованием" нет желания. (хоча глянуть схему БД) ... |
|||
:
Нравится:
Не нравится:
|
|||
|
18.07.2018, 08:12
|
|||
---|---|---|---|
|
|||
First и Last в запросе по запросу |
|||
#18+
sdku, Кривцов Анатолий . В принципе ответ на свой вопрос я получил от Akina, за что и спасибо. Я просто повторю то, как он звучал: "First и Last возвращают не то, что должны (т.е. не то что видно по результатам запроса Q1). И очень похоже, что убирая сортировку в Q1, в Q2 я получаю тот же резутьтат. Как такое может быть? " Но постепенно свалились в решение задачи. Min/Max меня бы спас, но не для этих полей. Я уже неоднократно убеждался, что в некоторых случаях запрос в запросе в разы медленнее, чем использование временной таблицы. Тем более если база расположена на сетевом ресурсе. Получается, что по сети я гоню данные один раз, а не три или больше (от количества запросов) и далее локально работаю с меньшим объемом. Поэтому первый запрос будет INSERT во вр. табл. T1, а второй будет брать данные из T1. И все получается так, как надо. Всем спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=45&mobile=1&tid=1611308]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
2ms |
others: | 13ms |
total: | 155ms |
0 / 0 |