
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
27.01.2005, 13:10
|
|||
|---|---|---|---|
|
|||
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
Здравствуйте всем. Вопрос такой. Есть запрос вида "select ... where id in (вложенный запрос)". Вложенный запрос довольно тяжёлый, поэтому его результаты (массив int[] или список из Integer, не знаю, как лучше) хранятся отдельно - в массиве или списке. Как мне сделать вещь типа такой: Код: plaintext 1. 2. 3. 4. Заранее спасибо. --С уважением, ponomarevvb-- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 13:25
|
|||
|---|---|---|---|
|
|||
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
в лоб: массив int[] - в строку типа: int[] a = {1, 3, 5, 6}; => String s = "1, 3, 5, 6" далее String qry = "select ... where a in (" + s + ")"; ResultSet rs = {something}.executeQuery(qry); -- Lacrima Mosa Est ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 13:28
|
|||
|---|---|---|---|
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
имхо, лучше оставить вложенный запрос на своем месте. Если он тяжелый - попробовать упростить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 13:35
|
|||
|---|---|---|---|
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 13:37
|
|||
|---|---|---|---|
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
А.Грасоff™в лоб: массив int[] - в строку типа: int[] a = {1, 3, 5, 6}; => String s = "1, 3, 5, 6" далее String qry = "select ... where a in (" + s + ")"; ResultSet rs = {something}.executeQuery(qry); -- Lacrima Mosa Est Многие драйвера вполне поддерживают и подстановку строковых параметров в скомпилированные операторы. Что-то вроде: PreparedStatement pst = connect.PrepareStatement("...where id in (?)"); pst.setString(1, "1,2,3,4,5,6,7"); ResultSet rs = pst.executeQuery(); нормально отрабатывает. Хотя и не со всеми драйверами и СУБД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 13:53
|
|||
|---|---|---|---|
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
Б in (?...) ЛМНЦН ГМЮВЕМХИ МЕ БЯРЮБХЬЭ. кСВЬЕ ДЕКЮРЭ РЮЙ: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 13:54
|
|||
|---|---|---|---|
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
чё за херня? Снова: в in (?...) много значений не вставишь. Лучше делать так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 13:56
|
|||
|---|---|---|---|
|
|||
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
2ponomarevvb: ты с Oracle работаешь? Если да, то можно использовать OraclePreparedStatement, в нем есть метод setARRAY(), в который можно передавать ARRAY, соответствующим образом поправив запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 13:57
|
|||
|---|---|---|---|
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
оффтоп. Кстати, никто не знает, почему иногда бывает интернета нет (странички не открывает и т.д. и т.п.) но почта работает, ася работает, даже ННТП работает? :) Posted via ActualForum NNTP Server 1.1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 14:26
|
|||
|---|---|---|---|
|
|||
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
riman оффтоп. Кстати, никто не знает, почему иногда бывает интернета нет (странички не открывает и т.д. и т.п.) но почта работает, ася работает, даже ННТП работает? :) Posted via ActualForum NNTP Server 1.1 разные вообще-то сервисы.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 19:16
|
|||
|---|---|---|---|
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
riman оффтоп. Кстати, никто не знает, почему иногда бывает интернета нет (странички не открывает и т.д. и т.п.) но почта работает, ася работает, даже ННТП работает? :)Дык. Ты не ассоциируй http-прокси с интернетом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
27.01.2005, 20:28
|
|||
|---|---|---|---|
|
|||
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
Всем большое спасибо. 2 А.Грасоff™, concat - я плакал, что ж я так торможу Denis Popov2ponomarevvb: ты с Oracle работаешь? Если да, то можно использовать OraclePreparedStatement, в нем есть метод setARRAY(), в который можно передавать ARRAY, соответствующим образом поправив запрос. А как создавать этот ARRAY? По докам что-то не могу разобраться: Код: plaintext 1. 2. --С уважением, ponomarevvb-- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
28.01.2005, 12:23
|
|||
|---|---|---|---|
|
|||
Как вставить список значений в раздел IN оператора SELECT на Java? |
|||
|
#18+
ponomarevvb А как создавать этот ARRAY? По докам что-то не могу разобраться: 1. Поищи на форуме по setARRAY . Если база создана не в юникоде, могут быть проблемы с представлением VARCHAR'ов, но в твоем случае это м.б. несущественно, т.к. передаются только числа. 2. Вот и FAQ пригодился;) 3. Код для Oracle: Код: plaintext 1. 2. 3. 4. Java: Код: plaintext 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. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&mobile=1&tid=2153022]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 211ms |
| total: | 345ms |

| 0 / 0 |
