|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
Добрый день. Скажите, как можно сдеать запрос с IN по двум полям? Код: sql 1.
Ну и возможно ли это в принципе? Может быть как-то через джоин можно сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2020, 15:42 |
|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2020, 15:58 |
|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
Гавриленко Сергей Алексеевич, А разве так писать не является более кошерным? Код: sql 1. 2. 3.
Или Exists лучше по производительности ? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2020, 16:18 |
|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
a_voronin, надо сравнивать планы запроса. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2020, 17:15 |
|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
a_voronin Или Exists лучше по производительности ? Exists не быстрее и не медленнее, но ПОНЯТНЕЕ. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2020, 07:43 |
|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
aleks222 a_voronin Или Exists лучше по производительности ? Exists не быстрее и не медленнее, но ПОНЯТНЕЕ. Строго говоря, наверное, может быть быстрее. Т.к. в случае left join сервер должен будет произвести соединение 2х наборов записей целиком, а во втором случае - лишь убедиться, что во втором наборе существует указанная комбинация. И не факт, что в первом случае сервер додумается редуцировать выборку. Ну, в простом случае то, наверное, сумеет, а вот чуть в сторону - может и нет. Где то встречал совет, использовать exists в сабжевых случаях так часто, как это возможно, именно с целью повышения производительности. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2020, 09:10 |
|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
a_voronin, Джойны хорошо размножаются, а экзисты хорошо сикаются ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2020, 09:11 |
|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
uaggster aleks222 пропущено... Exists не быстрее и не медленнее, но ПОНЯТНЕЕ. Строго говоря, наверное, может быть быстрее. Т.к. в случае left join сервер должен будет произвести соединение 2х наборов записей целиком, а во втором случае - лишь убедиться, что во втором наборе существует указанная комбинация. И не факт, что в первом случае сервер додумается редуцировать выборку. Ну, в простом случае то, наверное, сумеет, а вот чуть в сторону - может и нет. Где то встречал совет, использовать exists в сабжевых случаях так часто, как это возможно, именно с целью повышения производительности. Иллюзии это. Мифы и легенды. Официально exists реализуется сервером через join. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2020, 09:37 |
|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
env Джойны хорошо размножаются Что джойны делают? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2020, 10:35 |
|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
aleks222 Иллюзии это. Мифы и легенды. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45.
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2020, 10:38 |
|
как впихнуть в IN два поля? WHERE a,b NOT IN (select a,b from t)
|
|||
---|---|---|---|
#18+
invm aleks222 Иллюзии это. Мифы и легенды. Ну шо ты своими примерами тычешь? Бесполезная это вещЪ. Либо через join, либо надо разжувать "через какое чудо". ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2020, 17:41 |
|
|
start [/forum/topic.php?fid=46&msg=39977168&tid=1685903]: |
0ms |
get settings: |
9ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
22ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 283ms |
total: | 395ms |
0 / 0 |