|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
Запрос возвращает данные (строки): ААА | БББ | ВВВ | ААА | БББ | ДДД | Как собрать их в строку, типа: "ААА, БББ, ВВВ, ДДД" (т.е. ещё и исключить повторы)? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2016, 09:21 |
|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
Открыть ADODB.Recordset на UNION запросе вида "SELECT Поле1 FROM Таблица UNION Поле2 FROM Таблица", получить строку методом GetString, указав ", " в качестве разделителя строк. Ну еще удалить лишний ", " в конце строки. Можно и DAO.Recordset на том же запросе, но тогда строку нужно собирать в цикле по записям. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2016, 09:33 |
|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
авторМожно и DAO.Recordset на том же запросе, но тогда строку нужно собирать в цикле по записям. Т.е. в 2-х циклах (один - по записям, вложенный - по полям)? И каждое полученное значение проверять на InStr в уже собранной строке? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2016, 11:44 |
|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
123_456_789Т.е. в 2-х циклах (один - по записям, вложенный - по полям)? И каждое полученное значение проверять на InStr в уже собранной строке? Нет. Этот запрос складывает два столбца в один и сам отбрасывает дубли из 2-го столбца, если значение есть в первом. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2016, 13:41 |
|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
не понял: какой "этот" - ADODB или DAO? может код покажете? ... |
|||
:
Нравится:
Не нравится:
|
|||
29.03.2016, 22:44 |
|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
123_456_789, Слияние полей из разных строк запроса. 123_456_789 не понял: какой "этот" - ADODB или DAO? может код покажете?Тут-> Конкатенация столбцов ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2016, 04:48 |
|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
123_456_789не понял: какой "этот" - ADODB или DAO? UNION, который предложил Анатолий складывает 2 столбца в один и отбрасывает дубликаты независимо от способа вызова, а если применить метод GetString, который есть долько в DAO, столбец можно превратить в текстовую строку. Пример кода есть в хелпе ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2016, 07:32 |
|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
MrShin... метод GetString, который есть долько в DAO, столбец можно превратить в текстовую строку...? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2016, 07:43 |
|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
Конечно в ADO, сорри. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2016, 08:23 |
|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
Да, в ADO изящно получается! А подскажите про параметры функции, у меня так (слямзил из чужого кода): Код: vbnet 1.
второй, вроде как, - число выводимых в результате полей четвёртый - разделитель а первый и третий за что отвечают? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2016, 17:51 |
|
Собрать данные из неск.записей в одну строку
|
|||
---|---|---|---|
#18+
_Вопрос?, https://msdn.microsoft.com/en-us/library/ms676975(v=vs.85).aspx Код: vbnet 1.
Parameters StringFormat A StringFormatEnum value that specifies how the Recordset should be converted to a string. The RowDelimiter, ColumnDelimiter, and NullExpr parameters are used only with a StringFormat of adClipString. NumRows Optional. The number of rows to be converted in the Recordset. If NumRows is not specified, or if it is greater than the total number of rows in the Recordset, then all the rows in the Recordset are converted. ColumnDelimiter Optional. A delimiter used between columns, if specified, otherwise the TAB character. RowDelimiter Optional. A delimiter used between rows, if specified, otherwise the CARRIAGE RETURN character. NullExpr Optional. An expression used in place of a null value, if specified, otherwise the empty string. Перевод Google Параметры StringFormat Значение StringFormat Enum, который определяет, как Recordset должен быть преобразован в строку. Ряд Разделитель, Колонка Ограничитель и параметры NumExpr используются только с StringFormat из adClipString. NumRows Необязательный. Количество строк, которые будут преобразованы в Recordset. Если NumRows не указан, или если оно больше, чем общее количество строк в Recordset, то все строки в Recordset преобразуются. ColumnDelimiter Необязательный. Разделитель, используемый между колоннами, если указано, в противном случае символ табуляции. RowDelimiter Необязательный. Разделитель, используемый между строк, если указано, в противном случае символ возврата каретки символ. NullExpr Необязательный. Выражение используется вместо нулевого значения, если указано, в противном случае пустая строка. Имхо лучше Метод 3. Заполнение таблицы при помощи запросов (по Митину) по ссылке выше ... |
|||
:
Нравится:
Не нравится:
|
|||
30.03.2016, 19:06 |
|
|
start [/forum/topic.php?fid=45&msg=39203784&tid=1613744]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 146ms |
0 / 0 |