
Crestoff
02.10.2018
17:47:31
Between n to m
Просто запрос 800-900мсек
Считаю что это очень долго

Fike
02.10.2018
17:49:03
объем выгребаемых данных?

Google

Fike
02.10.2018
17:49:12
джойны?

Crestoff
02.10.2018
17:49:30
Нет джойнов
В одном селекте

Ilia
02.10.2018
17:49:56
А в двух?

Crestoff
02.10.2018
17:50:19
В двух тоже самое
)

Fike
02.10.2018
17:51:37
Объем выгребаемых данных?
Сколько записей достает один запрос?
И, самое главное, много ли читает база данных в процессе выполнения запроса?
(сейчас окажется, что выгребается на уровне скоростей диска и все в порядке)
а, ну еще эксплейн-то сделай

Crestoff
02.10.2018
17:52:55

Fike
02.10.2018
17:52:59
там легко filesort какой с такими объемами

Google

Fike
02.10.2018
17:53:02
лучше сюда

Crestoff
02.10.2018
17:53:41
Ок
примерное количество записей удовлетворяющих условия запроса 1m

Fike
02.10.2018
18:01:50
Если каждая запись по 10 байт (что уже неправда), то это только два мегабайта данных еще в непрочитанном виде (причем вряд ли это последовательное чтение, раз там есть фильтрация). Sending data впрочем странно, сколько строк приходит на клиент и какова пропускная способность сети?

Crestoff
02.10.2018
18:03:15
1Гбит
понятно что в данном запросе я не дёргаю все поля

Fike
02.10.2018
18:04:30
так а какая разница, это же не column-oriented
он все равно целиком запись читает
аааа, ты про отправку на клиент

Crestoff
02.10.2018
18:05:10
да
я тебе по количеству записей говорю что например запрос статсы за сутки обработает 1-2м записей
я просто думаю может 0.8 сек - это нормально для такого объёма

Fike
02.10.2018
18:10:57
profiling включи
или как его там
там будет более подробно расписано, куда время уходит

Crestoff
02.10.2018
18:12:48

Fike
02.10.2018
18:21:11
я бы прогуглил, судя по всему это совсем не отправка на клиент

Аня
02.10.2018
18:40:56

Google

Alexey
02.10.2018
18:56:54
Читай help(F1) к access. Ищи видео и статьи.
"Не смог - не пограммист"

Al
02.10.2018
19:24:16

Аня
02.10.2018
20:34:44
Если бы я нашла ответ, я бы не спрашивала тут
Но я уже просто поменяла функцию на другую ?

Al
02.10.2018
20:38:18

Roman
02.10.2018
22:24:23
О! А говорили только в армии можно увидать :)

Natali
03.10.2018
16:50:00
Блин почему text importer в pl sql developer'е забирает из 2000-го csv только 100 строк

Terminator
03.10.2018
16:59:57
Taras Kronov будет жить. Поприветствуем!

Natali
03.10.2018
17:02:28
Се, загрузилось

Dshk :)
03.10.2018
18:21:55
ребят, объясните, пожалуйста
учу EXISTS
таблица вида
id name price type
1 томат 15 1
2 лук 18 2
3 томат 14 1
Пишу вот такой запрос
SELECT name, price
FROM Product AS pr
WHERE type=1 AND
EXISTS (SELECT name
From Product
WHERE price = 14 AND name = pr.name
)
а выводится
name price
томат 15
томат 14
в чём прикол? что не так?
когда отдельно запускаю то, что в скобках, то нормально отрабатывает

Shaz
03.10.2018
18:24:25

Dshk :)
03.10.2018
18:24:50
разве нет?

Кирилл
03.10.2018
18:26:11
Если нужно вывести томат 14, то зачем тут вложенный селект?

Shaz
03.10.2018
18:26:30

Dshk :)
03.10.2018
18:27:27

Shaz
03.10.2018
18:29:00

Dshk :)
03.10.2018
18:31:20
я про то, что этот запрос искусственный, просто чтобы понять как работает EXISTS, но как-то он не так работает как я думала, поэтому спросила в чём ошибка, что он не ограничивает вывод одним томатом по цене 14

Shaz
03.10.2018
18:31:20

Google

Shaz
03.10.2018
18:40:17
И зачем ты в pr отбираешь и name и price?

Dshk :)
03.10.2018
18:43:13
просто чтобы в результате выводить и name и price
если убрать price, то ничего не поменяется
и если убрать AND name = pr.name, тоже ничего не меняется)

Fike
03.10.2018
18:53:00

Dshk :)
03.10.2018
19:11:57

Al
03.10.2018
19:14:35

Кирилл
03.10.2018
19:36:06
Упражнения по SQL
http://www.sql-ex.ru/

Fike
03.10.2018
19:55:50

Gleb
03.10.2018
20:08:16

Dshk :)
03.10.2018
20:22:52
но цены то разные
нет, ты выбираешь томаты, для которых существует одноименная запись с ценой 14

Fike
03.10.2018
20:26:34
но цены то разные
окей, давай перефразирую: ты выбираешь все такие записи, для которых выполняется условие
условие следующее: если взять название записи, то в таблице найдется запись с тем же названием и стоимостью в 14 не знаю чего
не _та же самая запись_, а _запись, удовлетворяющая предикату названия и стоимости_

Al
03.10.2018
21:06:51

Dshk :)
03.10.2018
21:14:15

Fike
03.10.2018
21:18:55
Нет, у тебя там И. Название ты берешь из текущей записи, для которой выполняется предикат, а стоимость у тебя всегда одна и та же. Поэтому ты два раза проходишь по томатам, два раза подставляешь их, два раза получаешь предикат название=томат, стоимость=14

Dshk :)
03.10.2018
21:48:03
цена то разная

Fike
03.10.2018
21:54:00
Смотри, берем твой подзапрос
EXISTS (SELECT name
FROM Product
WHERE price = 14 AND name = pr.name
)
Как он будет выглядеть, когда будет обрабатываться строка с томатом и ценой 14?
Как он будет выглядеть, когда будет обрабатываться строка с томатом и ценой 15?

Google

Dshk :)
03.10.2018
21:57:46
выведет строку с 14 и не выведет с 15
на сколько я понимаю, после проверки price = 14 томат с ценой 15 сразу отвалится и проверки name = pr.name уже и не будет

Fike
03.10.2018
21:58:20
давай не выведет-не выведет, а просто подставим значения и посмотрим, какой запрос получится

Dshk :)
03.10.2018
22:00:21
WHERE 14 = 14 AND томат = pr.name
WHERE 15 = 14 AND томат = pr.name
ты про это?
или как туда подставить))

Fike
03.10.2018
22:00:58
Почти. На самом деле будет WHERE price = 14 AND name = 'томат'