Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
Хочу выбрать похожие статьи по тэгам: Код: plaintext 1. Здесь выбираю статью (опустил where). Теги к статьям M:M. Код: plaintext 1. 2. 3. 4. 5. Как написать запрос, чтобы выбрать статьи, которые имеют тот же набор тегов? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2011, 22:34 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
Кто-нибудь может помочь? Может какие-нибудь идеи? Или инфы недостаточно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 14:33 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
одним запросом? сколько у вас статей и сколько у каждой в среднем тэгов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 16:08 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
Вестникодним запросом? сколько у вас статей и сколько у каждой в среднем тэгов? В идеале одним. Циклом по каждому тегу или каждой статье не хочется генерировать запросы. Статей пока около 30. Тегов поменьше. Но понятно, что и статей больше будет и тегов. Поэтому хочется раз и на всегда решить вопрос. Пробовал несколькими способами. Но каждый раз одна и та же ошибка: Код: plaintext 1. Пробовал и так: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 20:12 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
Понимаю, что linq to entites не понимает, как сранивать. Надо как-то сравнивать по id тега. Но запрос построить не могу. Ни методами ни linq. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 20:14 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
Тот же набор тегов можно проверить с помощью пары методов Intercept и Except ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 21:06 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
я не понял вопрос: вам нужно найти все статьи по образцу или все пары/тройки/etc, у которых совпадают наборы тэгов? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 21:26 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
buredТот же набор тегов можно проверить с помощью пары методов Intercept и Exceptнужно среди множества наборов выделить все, совпадающие с данным. не совсем понятно, как это сделать с помощью этой пары методов одним запросом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 21:36 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
Вестникя не понял вопрос: вам нужно найти все статьи по образцу или все пары/тройки/etc, у которых совпадают наборы тэгов? Нужно выбрать статьи, которые имеют точно такой же набор тегов, ни одним больше или меньше. Если одним запросом нельзя, то можно двумя. Можно даже от безвыходности пробежаться в цикле по всем статьям, но это уж совсем от бессилия. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 22:09 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
пробежаться в цикле по всем статьям запрос, если его удастся написать, сделает именно это. на ваших объемах (меньше 10000 статей) это будет почти мгновенно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 22:18 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
Извините все. Проблему решил. Но тут еще оказалось, что не весь набор должен совпадать, а хотя бы один тег. Решение такое же (может даже можно поюзать All вместо Any, чтобы решить первоначальную проблему): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 22:23 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
Селект получился такой: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 22:29 |
|
||
|
Linq To Entities
|
|||
|---|---|---|---|
|
#18+
вот такая идея на sql: таблицы: Articles (int ArticleId) Tags (int TagId) ArticleTags (int ArticleId, int TagId) ModelId - статья образец Код: plaintext Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. оптимизатор скорее всего развернет этот запрос в несколько временных таблиц и работать будет намного дольше прямого перебора. обязательное условия - теги в статья не повторяются (т.е. unique(TagId, ArticleId)) оно вам надо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2011, 22:34 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=37275436&tid=1350779]: |
0ms |
get settings: |
9ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
36ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
56ms |
get tp. blocked users: |
5ms |
| others: | 258ms |
| total: | 388ms |

| 0 / 0 |
