
Denis
25.05.2017
19:04:20
Кто это

Илья
25.05.2017
19:16:19
Дед пихто

Denis
25.05.2017
19:16:59

Khasan
25.05.2017
19:18:37
Я бухий в хлам
неужели программистам нужно еще и напиваться? они и так не в себе)

Google

Evgeniy
25.05.2017
19:19:13
пик балмера же!

Му
25.05.2017
20:05:26
а в EF.Core есть возможность одним запросом выбрать несколько сущностей с разными id шниками?

Egor
25.05.2017
20:07:30
ээ .Select?

Му
25.05.2017
20:08:27
через & писать?
а если id`шников 100
это будет 100 отдельных SELECT * FROM?

Aleksander
25.05.2017
20:09:53
.Where(e => ids.Contains(e.Id).Select() ?

Му
25.05.2017
20:11:29
а в базу это в каком виде уйдёт?

Egor
25.05.2017
20:13:31
либо Join
хотя join скорее всего не сработает на локальный лист

Aleksander
25.05.2017
20:15:41
сколько у тебя айдишников?

Му
25.05.2017
20:16:43
ну пока 10

Google

Му
25.05.2017
20:16:54
потом больше будет

Aleksander
25.05.2017
20:16:58
если ~2к, то лучше разбить на батчи. по моему там ограничение на 2к параметров есть

Му
25.05.2017
20:17:08
2к конечно надо будет разбить :)
ладно, спасибо, сейчас выкачаю дамп, проверю что в sql приходит

Aleksander
25.05.2017
20:17:32
но зависит от БД :)

Му
25.05.2017
20:22:11
а ещё тогда вопрос со звёздочкой :)
есть табличка, в которой записи связаны с другими двумя через id + дата для каждой такой связки.
т.е.
id1, id2, date
1, 2, 01.01.2017
1, 2, 02.01.2017
1, 2, 03.01.2017
1, 2, 04.01.2017
1, 2, 05.01.2017
1, 3, 01.01.2017
1, 3, 02.01.2017
1, 3, 03.01.2017
1, 3, 04.01.2017
можно ли одним запросом выбрать все записи у которых один из id одинаковый и дата ближайшая к заданной?
например чтобы на запрос "дай мне все у которых id1 == 1 на дату 05.01.2017"
1, 2, 05.01.2017
1, 3, 04.01.2017
или данная структура не очень подходит под такую задачу?

Egor
25.05.2017
21:01:54
что такое "ближайшая"?
почему две записи тогда если "ближайшая"?

Му
25.05.2017
21:07:52
потому что у них id2 отличаются
ближайшая криво сказал, да.. с датой <= 05.01.2017
по каждому уникальному id2

Лолитка
25.05.2017
21:13:47
я туплю, или в SQL это селект с двумя условиями?
т.е. линкьюха тоже не должна звёзды хватать

Му
25.05.2017
21:17:01
я не знаю :) пока не смог скомпилировать это нормально у себя в голове

Egor
25.05.2017
21:54:22
table.Where(i => (i.Id1 == id || i.Id2 == id) && i.Date >= date); ?

Лолитка
25.05.2017
21:55:04
ну вот да

Egor
25.05.2017
21:55:09
хотя я думаю я не понимаю условие

Лолитка
25.05.2017
21:55:18
+

Aleksander
25.05.2017
22:13:00
выбрать можно, но на больших объемах будет неэффективно

Google

Aleksander
25.05.2017
22:14:41
для объяснений уже, пожалуй, поздновато.. но вот что-то похожее на SO - https://stackoverflow.com/questions/19012986/how-to-get-first-record-in-each-group-using-linq

Stanislav
25.05.2017
23:02:04
Вот в C# есть возможность асинхронно запускать задачи. Какова будет эффективность если я к примеру запущу 20тыс таких задачь, каждая из которых будет складывать один массив с другим, и размер массива примерно размером в 50 элементов.
Просто к примеру nodejs думаю с этим справится без проблем, а как на счёт шарпа?

pew
25.05.2017
23:03:04
20 тысяч? всего-то
еще 10 тысяч ядер останется свободно

Stanislav
25.05.2017
23:04:48

pew
25.05.2017
23:09:48
7 мс на моем компе
problem?
ладно, шучу это запуск столько занял
думаю с выполнением времени особо не прибавится, нет смысла заморачиваться писать
скинешь за сколько твой нодджс это делает?)

Stanislav
25.05.2017
23:24:30
Особо не прибавится?)) 20к вызывов функций с циклом каждый из которых в 50 обходов)) сейчас юнит-тест напишу

Egor
25.05.2017
23:25:54
покажи код на ноджс чтобы сравнить
нет уж

pew
25.05.2017
23:26:32

Egor
25.05.2017
23:26:39
сказал а - давай тесты на ноджс
ща будет бить
ноджс

pew
25.05.2017
23:28:52
щя крестьяне выйдут с вилами требовать тесты

Google

Egor
25.05.2017
23:29:33
дык уже
где тесты?
насаживай его на вилы, посоны

Stanislav
25.05.2017
23:29:35
ноджс
Не, я ноджс привёл в качестве примера, то что он асинхронный. Можешь создать цикл в 20к вызывов функций, в кождой из которой будет складываться каждый элемент массива, ну или инкрементироваться на еденицу. И засечь время. А задачи - это асинхронные задачи в шарпе

Egor
25.05.2017
23:30:19
как ты запускаешь задачи?

Admin
ERROR: S client not available

Egor
25.05.2017
23:30:35
я не понимаю в чем ассинхронность

Andrew
25.05.2017
23:30:51

Stanislav
25.05.2017
23:31:56

Andrew
25.05.2017
23:34:03

Stanislav
25.05.2017
23:35:16
Мне не на сервер, и не для асп. Мне просто проверить скорость выполнения большого количества задач с маленькими операциями

Egor
25.05.2017
23:35:45
если тебе надо скорость - не бери таски вообще тогда
или хотя бы пиши кастомный таск-скедулер

Stanislav
25.05.2017
23:36:20
А что брать? Asyn await?

Egor
25.05.2017
23:36:21
На скорость бери Parallel.For
ну вот я прямо вижу. Ты собрался мерить производительность но не понимаешь в тасках :) вот потом пойдешь кричать что ноджс быстрее!11

pew
25.05.2017
23:37:48
таски в циклах зло
от них нормально память не очищается если их в цикле начать фигачить

Egor
25.05.2017
23:38:22
не понял)

Stanislav
25.05.2017
23:38:22

Google

Egor
25.05.2017
23:38:39
напиши пример и покажи
мы тебе объясним
как быстрее

pew
25.05.2017
23:39:25
звучит как угроза

Egor
25.05.2017
23:41:18
впрочем ответ уже был выше:
Parallel.For :)

Andrew
25.05.2017
23:41:37

Egor
25.05.2017
23:44:35
^ шарит в преждевременной оптимизации

pew
25.05.2017
23:46:20
чат за недельку на 200 чел прибавил
забавно

Gid
26.05.2017
04:47:40
Актив все тот же

Andrey
26.05.2017
04:47:58
А как же Йа?)

Andrew
26.05.2017
05:09:38
Эта группа больше не существует