
Vladislav
25.04.2018
16:36:11
Мейби кэш?

Anton
25.04.2018
16:40:40
вроде нет, внутри view есть common table expressions - на них грешу, но все же очень странно

Ilia
25.04.2018
18:19:01
Select into испортить невозможно, а вот select * можно легко

Google

Al
25.04.2018
19:07:52

Ilia
25.04.2018
19:09:54
Возможно

Al
25.04.2018
19:13:47
Передается ли вирус грамарнаци через укус?!

Ilia
25.04.2018
20:03:35
Ну укуси кого-нибудь, и посмотри...

Stanislav
26.04.2018
04:33:05
Всем привет! Может кто подскажет по TokuDB, в каких ситуациях включение tokudb_directio оправданно?

Vlas
26.04.2018
11:21:26
Доброго дня!
Подскажите, пожалуйста, по виртуальным колонкам. Могут ли их значения в конструкции case - when определяться подзапросом? В приведенном ниже примере получаю "ORA-54016: Задано недопустимое выражение столбца"
Возможно, есть какие-то предположения?

Ilia
26.04.2018
12:26:58
Виртуальные колонки -- это что? Выражения в запросах?

Roman
26.04.2018
13:52:15
у меня в Neo4j несколько связей (:Entity)-[:RECORDED]-> к нескольким типам других узлов: FirstRec, SecondRec и у каждого есть свойство time
тепер мне нужно вернуть все самые последние по rec.time узлы каждого из типов
я бы написал:
MATCH (e:Entity)
WHERE e.id IN {entityIds}
MATCH (e)-[:RECORDED]->(frec:FirstRec),
MATCH (e)-[:RECORDED]->(сrec:SecondRec)
RETURN
e.firstProperty AS firProp,
e.secondProperty AS secProp
RETURN
frec.value AS frec ORDER BY frec.time LIMIT 1
RETURN
srec.value AS srec ORDER BY srec.time LIMIT 1
но Cypher разрешает только один RETURN statement,
не подскажете как решить?


Rushan
26.04.2018
13:52:47
Всем добрый день!
Помогите пожалуйста разобраться. Встретил необычный синтаксис с джойнами и on-ами, не пойму, что он делает.
1. Тут не пойму, зачем несколько ON, что они делает, есть ли разница от AND
SELECT поля
FROM таблица1 INNER JOIN таблица2
ON таблица1.таблица1оператор_сравнениятаблица2.поле1 AND
ON таблица1.поле2оператор_сравнениятаблица2.поле2) OR
ON таблица1.поле3оператор_сравнениятаблица2.поле3)];
2. А тут несколько джойнов подряд, выше моего понимания.
SELECT поля
FROM таблица1 INNER JOIN
(таблица2 INNER JOIN [( ]таблица3
[INNER JOIN [( ]таблицаx [INNER JOIN ...)]
ON таблица3.поле3оператор_сравнениятаблицаx.полеx)]
ON таблица2.поле2оператор_сравнениятаблица3.поле3)
ON таблица1.поле1оператор_сравнениятаблица2.поле2;
P.S. Долго гуглил, не нашёл объяснения.

Vladislav
26.04.2018
13:55:08
2. тут все ок, ждя каждого джойна свой ON

Rushan
26.04.2018
14:01:22

Google

Vladislav
26.04.2018
14:01:35
ссылку на док
а отличия, по сути ничем

Ilia
26.04.2018
14:03:41


Rushan
26.04.2018
14:10:29
ссылку на док
https://support.office.com/ru-ru/article/%d0%9e%d0%bf%d0%b5%d1%80%d0%b0%d1%86%d0%b8%d1%8f-inner-join-b9e73ab6-884a-403e-9f22-cb502feae36a?ocmsassetID=HA001231487&CorrelationId=da2e0100-5547-4f2b-8a35-098e6e4830b2&ui=ru-RU&rs=ru-RU&ad=RU
ойой

Ilia
26.04.2018
14:11:05
ЭТо чё бля АКСЕСС?

Rushan
26.04.2018
14:11:06
натупил я
извините)))
не обратил внимание до последнего, что это access

Vladislav
26.04.2018
14:11:59
это поделка мелких в аксесе
вечно забываю, как она называется

Ilia
26.04.2018
14:12:31
В Аксессе может быть всё, что угодно, это абсолютно ебанутая СУБД.
Извиняюсь за французский...


Roman
26.04.2018
15:16:51
у меня в Neo4j несколько связей (:Entity)-[:RECORDED]-> к нескольким типам других узлов: FirstRec, SecondRec и у каждого есть свойство time
тепер мне нужно вернуть все самые последние по rec.time узлы каждого из типов
я бы написал:
MATCH (e:Entity)
WHERE e.id IN {entityIds}
MATCH (e)-[:RECORDED]->(frec:FirstRec),
MATCH (e)-[:RECORDED]->(сrec:SecondRec)
RETURN
e.firstProperty AS firProp,
e.secondProperty AS secProp
RETURN
frec.value AS frec ORDER BY frec.time LIMIT 1
RETURN
srec.value AS srec ORDER BY srec.time LIMIT 1
но Cypher разрешает только один RETURN statement,
не подскажете как решить?
MATCH (e:Entity)
WHERE e.id IN ["fcfe3585f4d44990a7ae7d178ccc83b4", "24ccfdf8379e48fb9a4aa3468b648f1e"]
MATCH (e)-[frecr:RECORDED]->(frec:FirstRecord),
(e)-[srecr:RECORDED]->(srec:SecondRecord)
WITH e,frec,srecr,srec ORDER BY frecr.time DESC LIMIT 1
WITH e,frec,srecr,srec ORDER BY srecr.time DESC LIMIT 1
RETURN
head(collect(frec.value)) AS latestFirstRec,
head(collect(srec.value)) AS latestSecondRec,
e.id AS id
LIMIT 1 фильтрует всё из результатов до одной строки.. но должна была отфильтровать только все последние FirstRecord и SecondRecord
до сих пор не могу разобраться, есть у кого идея?


Al
26.04.2018
15:22:31

Roman
26.04.2018
15:23:03

Al
26.04.2018
15:23:22

Google

Roman
26.04.2018
15:23:43

Al
26.04.2018
15:24:01
За то время пока ты паришься ты мог уже 100500 простых запросов написать.

Vladislav
26.04.2018
15:24:56

Al
26.04.2018
15:25:36

Denis
26.04.2018
15:25:40
во первых начнем с того что какие вообще пароли в нео че вы там курите )

Vladislav
26.04.2018
15:25:59
а, вы про нео, тогда я пошел
я этот ужас не ковырял

Roman
26.04.2018
15:26:39
т.е. если запросят 20 профилей пользователей одновременно, то это 13 полей + ещё 1 запрос на каждого, т.е. 280 round-trip'ов к бд при 20 запросах и в этом нет overhead'а?!

Al
26.04.2018
15:26:46
я этот ужас не ковырял
Да никаких особых отличий. Кроме того что нео еще тупее чем все остальное. Но хомячки ведутся

Denis
26.04.2018
15:27:15
ты пароли будеш в базе проверят ???wtf

Roman
26.04.2018
15:27:45

Denis
26.04.2018
15:27:52
вечер не важно _
)
))

Roman
26.04.2018
15:28:35

Al
26.04.2018
15:30:25

Roman
26.04.2018
15:32:29
дак это же 280 раз послать, 280 раз пропарсить, 280 раз выполнить
нежели всё то же но 1 раз
что за бредятина, мой мозг отказывается в это верить

Google

Al
26.04.2018
15:35:37

Roman
26.04.2018
15:36:40

Al
26.04.2018
15:40:21
Бд (любая) это прежде всего быстро найти нужную запись. Потому индексы и прочее. Идеальная бд это когда все записи фиксирлванной длинны и на все поля есть индексы. Тогда очень быстро можнл высчитать начало нужной записи и выдать ее.
На этом все.
Все твои хитро вымученные запросы будут обрабатыватся в лоб. В большинстве случаев перебором всем записей ибо бд это не ИИ который нативно понимает че тебе нужно.
Вытащить 280 раз нужные строки будет дешевле чем разбирать твою логику и понимать че ты вообще хотел

Admin
ERROR: S client not available

Al
26.04.2018
15:44:21
В общем продолжай мучить нео. Потом не плачь. Ну либо приходи плакать мы поржом

Roman
26.04.2018
15:45:03
Опять?
разве ты это уже пояснял?

Al
26.04.2018
15:45:07
Мечтаю увидеть нео в продакшене под нагрузкой ?

Roman
26.04.2018
15:45:34

Al
26.04.2018
15:45:56
Перечитай еще раз

Roman
26.04.2018
15:47:30
во вторых, какая альтернатива? SQL? с SQL з@еб3шься при частых измемениях структуры

Al
26.04.2018
15:49:27

Roman
26.04.2018
15:50:06

Al
26.04.2018
15:51:16
Ну и нео просто ляжет под нагрузкой

Roman
26.04.2018
15:52:10

Al
26.04.2018
15:52:11
Причем сразу

Google

Al
26.04.2018
15:52:15
И намертво

Roman
26.04.2018
16:04:22

Al
26.04.2018
16:06:55
В общем надоело за нео. Мне пары недель хватило что бы выкинуть и забыть как страшный сон

Roman
26.04.2018
16:10:18

Al
26.04.2018
16:15:17

Roman
26.04.2018
16:16:46

Al
26.04.2018
16:19:57

Roman
26.04.2018
16:21:25
SQL это хорошо для статичных структур, не спорю, но в самом начале это вообще не вариант, лишний overhead в итерациях

Al
26.04.2018
16:24:27

Roman
26.04.2018
16:24:48

Al
26.04.2018
16:25:34
в смысле?
В прямом. Что это за разработка когда не известно какие данные нужны