Гость
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / SQL Rows into 1 string / 6 сообщений из 6, страница 1 из 1
13.08.2009, 20:59
    #36143027
Svetalana Shulman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Rows into 1 string
Podkajite pojaluista kak Select multiple 1 column row v single string.
ex
OID
1
2
3
4
5

Nujen Rezultat: 1,2,3,4,5

Spasibo
...
Рейтинг: 0 / 0
13.08.2009, 21:07
    #36143037
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Rows into 1 string
Svetalana ShulmanPodkajite pojaluista kak Select multiple 1 column row v single string.
ex
OID
1
2
3
4
5

Nujen Rezultat: 1,2,3,4,5

Spasibo
1) Создать Datastore на основе этого запроса с одним столбцом, retrieve, потом в цикле по строкам Datastore соединить ячейки в одну строку с разделителем.

2) Если СУБД поддерживает агрегатную функцию list() то использовать запрос
Код: plaintext
select list(oid, ', ' order by oid) from table
и получить результат в одной ячейке.
Здесь правда может возникнуть ограничение на максимальный размер строки в СУБД или в DataStore.
...
Рейтинг: 0 / 0
14.08.2009, 17:55
    #36145260
Svetalana Shulman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Rows into 1 string
Bolshoe spasibo za pomosch..
...
Рейтинг: 0 / 0
03.03.2010, 14:30
    #36499902
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Rows into 1 string
Anatoly Moskovsky...2) Если СУБД поддерживает агрегатную функцию list()...
Например, у меня версия СУБД не поддерживает такую функцию. :(
Anatoly Moskovsky...1) Создать Datastore на основе этого запроса с одним столбцом, retrieve, потом в цикле по строкам Datastore соединить ячейки в одну строку с разделителем...
Я тоже так делаю. Но недавно обратил внимание в форуме на такое:
Код: plaintext
1.
2.
3.
4.
5.
6.
string ls_text, ls_arr[], ls_arr_new[]

ls_arr = {A,B,C,...,Z}

ls_text = ls_arr  /*ls_text содержит ABC...Z*/
ls_arr_new = ls_text  /*ls_arr_new содержит {A,B,C,...,Z}*/
Попробывал, работает. Хотел про такие варианты почитать в Help и книжках по РВ, но не нашел.
Так вообще можно делать? Если - да, то интересно с какой версии. (У меня РВ10.5)
Можно ли такое же проделывать напрямую со столбцом DW?
Можно ли в таком решении вставить как-то разделитель?
...
Рейтинг: 0 / 0
10.03.2010, 10:03
    #36510702
Riska
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Rows into 1 string
AIS,
А у меня это счастье не работает. Получаю ошибку:
Mixing array and non-array in assignment statement. Что, собственно, логично.

Можно ли такое же проделывать напрямую со столбцом DW?

Код: plaintext
1.
2.
3.
4.
5.
6.
В одну сторону можно:
string ls[]
ls = dw_1.Object.col_name.Current
или
ls = dw_1.Object.col_name.Current.Selected
В другую нельзя. T.e. 
dw_1.Object.col_name.Current.Selected = ls // не пляшет
...
Рейтинг: 0 / 0
10.03.2010, 13:26
    #36511403
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SQL Rows into 1 string
Riska ,
да-а, Вы правы. Запустил примерчил снова, тоже выдало ошибку.

Что-то я видать где-то проглядел. Попытался найти тот пример в форуме - пока не нашел. Но уже стало ещё интересней. :)
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / SQL Rows into 1 string / 6 сообщений из 6, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]