
Andrey
02.08.2016
15:52:44
и после него ордер

Sharkus
02.08.2016
15:56:13
Потому что 1-2-3-2-6 оно не даст
А ему нужно именно схлопнуть повторы, но одинаковые значения не подряд оставить

H
02.08.2016
15:57:22
Я сделаю проверку при вставке, на самом деле. Мне дупликаты не нужны, но решить задачу хочется :)

Google

Sergey
02.08.2016
16:05:57
последнее значение храни отдельно и с ним сравнивай, если есть прослойка, которая через себя всё вставляет, то прямо в ней можешь хранить

H
02.08.2016
16:06:20
Так не интересно

Sergey
02.08.2016
16:06:32
место лишнее не будешь занимать в базе
через pl/pgsql в цикле, естественно, тривиально решается, но будет несколько медленнее обычного select

H
02.08.2016
16:09:04
Тут уже дело чести :)

Andrey
02.08.2016
16:11:17

Sergey
02.08.2016
16:18:43
по-моему в любом случае придётся обёрткой отсеивать, а уж где эта обёртка будет расположена - вопрос отдельный
на выходе наиболее правильное место будет в постгресе, т.к. лишние данные наружу из базы не выйдут (по сути нужна небезызвестная консольная утилита uniq, только в виде функции постгреса)
на входе - в софтине, которая значения в базу пишет, т.к. даже запрос лишний в базу не уйдёт

H
02.08.2016
16:19:27
это верно, так как данные мне не нужны, буду на входе отсеивать

Sharkus
02.08.2016
16:41:21
SQL> select f from (select f, lag(f) over (order by rowid) as lf from wtf order by rowid) where f != lf or lf is null;
F
—------—
1
2
3
2
6
кекеке

H
02.08.2016
16:42:23
я таких слов то не знаю

Sharkus
02.08.2016
16:42:36
ну вот такие есть аналитические функции

Google

Sharkus
02.08.2016
16:42:45
ещё думал сделать через join на себя
как вариант

H
02.08.2016
16:43:11
я уже просто фильтр на входе сделал, слишком сложно для меня, я совсем начинающий

Sharkus
02.08.2016
16:44:03
Ну, ты же просил чистый sql :)

H
02.08.2016
16:45:40
не, ну красава, почитаю потом sql, попробую разобраться

Sharkus
02.08.2016
16:46:17
https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions070.htm#i1327527
Ну или так вообще :https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions001.htm#i81407
Вот тут ключевой момент, дальше лирика

H
02.08.2016
16:51:59
правда в постгресе не завести

Jonh
02.08.2016
16:52:43

H
02.08.2016
16:52:52
я уже
там разбираться надо
RROR: window function row_number requires an OVER clause
я просто первый раз слышу про OVER
надо читать

Sharkus
02.08.2016
16:57:18
Можно тупо join на себя по t1.rownum = t2.rownum - 1 и сравнивать значения
Ну, как я думаю.

Sergey
02.08.2016
16:59:51
и сравнить бы по скорости с обёрткой на pl/pgsql
и кроме того, по потреблению памяти

Google

Sharkus
02.08.2016
18:19:21
SQL> select t1.f from (select f, rownum as r from wtf) t1, (select f, rownum as r from (select f from wtf union all select null as f from dual)) t2 where t2.r = (t1.r + 1) and (t1.f != t2.f or t2.f is null);
F
—------—
1
2
3
2
6
Типа того.

Dmitry
05.08.2016
07:54:43
новости из мира "джанго - говна кусок"
обычный django app, ничего сложного в моделях и таблицах.
./manage.py makemigrations blablabla (один app, причем, даже не весь проект)
долго тупит и в итоге Segmentation fault (core dumped)
надо рассказывать, что с алхимией и алембиком ни разу такого не было? :)

Sharkus
05.08.2016
07:57:18
Сейчас набегут джангоёбы и будут рассказывать тебе про руки.
Хотя нет, не тот чат :)

Dmitry
05.08.2016
07:57:59
сунем им под нос ссылку, где написано, что таки да - говна кусок и "... в 1.9.х пофиксят"
http://aboumrad.info/django-migration-segfaults.html

Jonh
05.08.2016
08:14:25
сегфолт - это хорошо, это мощно

Andrey
05.08.2016
08:23:53
http://cs7008.vk.me/v7008273/23b45/tbFRA-rfaUE.jpg

Oleh
08.08.2016
09:08:41
Ребят помогите SQL написать плс
SELECT EXISTS(SELECT null FROM items WHERE url= "/handle/2015/42307") result
а если нужно проверить много записей за раз как делать лутше?

Alexey
08.08.2016
09:09:00
О_о

Oleh
08.08.2016
09:09:28
сложно да?)

Alexey
08.08.2016
09:09:44
Погоди секундочку. Сейчас подумаю и загружу тебе ответ.
По-моему вот так нормально.

Oleh
08.08.2016
09:11:31
ахаха))
хороший такой ответ)

Alexey
08.08.2016
09:11:53
Ещё вот так можно.

Oleh
08.08.2016
09:11:58
увесистый)

Alexey
08.08.2016
09:12:03
Хм, вот так тоже нормалёк будет. Хороший вариант решения проблемы.

Oleh
08.08.2016
09:13:23
спасибо:)

Google

Alexey
08.08.2016
09:13:29
Ну и вот, это уже продвинутое решение вопроса. Выбирай на вкус, с умом.

Oleh
08.08.2016
09:14:14
значит пока оставлю как есть:) а позже доделаю??

Alexey
08.08.2016
09:14:18
Ну и дурак.
В меня бы кто кинул книгой на русском языке как с нуля нормальные пацаны проектируют приложения. Чтобы без хуйни.

Oleh
08.08.2016
09:14:47
я буду читать
но сейчас хочу поскорее скрипт закащику отдать
но почитаю обезательно!

Alexey
08.08.2016
09:17:05
Учебником русского кидаться не буду — лень. :)

Oleh
08.08.2016
09:18:02
ну извини, я не с Росии, я пытаюсь норм писать
но не всегда получается

Dmitry
08.08.2016
09:18:33

Oleh
08.08.2016
09:18:39
Украина
это имеет значение?)

Dmitry
08.08.2016
09:19:08
а как ты пишешь обычно, "из Украины" или "с Украины" ?

H
08.08.2016
09:19:21
ис украины

Alexey
08.08.2016
09:19:41

Oleh
08.08.2016
09:19:57

Dmitry
08.08.2016
09:20:12
я без наезда, мне правда интересно стало :)

Alexey
08.08.2016
09:20:37
Олег не ведись, Дима всех разувает на политоту, один уже даже пизды банхаммером получил за тупой слив. :))

Google

Oleh
08.08.2016
09:20:55
=)

Dmitry
08.08.2016
09:20:57

Alexey
08.08.2016
09:21:16
Я забанил — из него говно без остановки валило.
Надо разбанить взад, вдруг починился, кстати.

Dmitry
08.08.2016
09:22:09
а тут просто увидел "с", сразу конечно догадался откуда :) но решил спросить, неужели правильный хохол, который пишет нормально "с Украины" и его там не люстрировали до сих пор за это :)

Alexey
08.08.2016
09:22:48
Я бы если оттуда был бы — на хуй и через хуй проворачивал кого угодно, кто указывает как мне говорить.

Petr
08.08.2016
09:22:52

Alexey
08.08.2016
09:23:07

Dmitry
08.08.2016
09:23:21

Petr
08.08.2016
09:23:24

H
08.08.2016
09:23:25
нет, не починился

Alexey
08.08.2016
09:24:10

H
08.08.2016
09:24:32
Кстати, для слоу. Меня выпилили за посыл нахуй, что в чатике вроде как декларируемо разрешено. Правда, копротивленцы с синдромом Вахтера решили, что правила работают только в одну сторону. А теперь вали нахуй