помогите pls. создать SQL запрос

Работа VB и СУБД (Access, MSSQL, MySQL, Oracle и пр.)
Правила форума
При создании новой темы не забывайте указывать используемую СУБД.
Боря
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 14.06.2003 (Сб) 6:19

помогите pls. создать SQL запрос

Сообщение Боря » 14.06.2003 (Сб) 7:39

помогите pls. создать SQL запрос
у меня есть запрос

select fldID, fldTest from tblTest

и получаю результат:

fldID fldTest
1 a
2 b
3 c
4 d

вопрос:
А как с помощью одного запроса получить string "a, b, c, d"?

Спасибо

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 14.06.2003 (Сб) 8:08

Ну дык, ручками :)

Прочёсываем получившийся рекордсет по всем записям, и для каждой записи пишем: a = a & rs.fields("fldtest") & ",". Предварительно А объявляем как строку. Ну а после перебора делаем a = left$(a, len(a) - 1), чтобы убрать последнюю запятую.



ЗЫ: 400...
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Боря
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 14.06.2003 (Сб) 6:19

Сообщение Боря » 14.06.2003 (Сб) 20:05

Э-э-э, GSerg, конечно, спасибо за ответ, но в вопросе я четко спрашиваю про чистый SQL statment, а не про RecordSet. В качесве информации на будущее - Когда ты работаешь с миллионной DB перебор в RecordSet у тебя займет вечность.

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 15.06.2003 (Вс) 6:56

Стльно сомневаюсь в возможности получания данного результата чистым SQL. База данных для того и придумана, чтобы хранить и обрабатывать инфу в виду таблиц. Статистические функции SQL предназначены только для чисел. Не вижу, что тут можно ловить. Перечитал справку по SQL. Не вижу по-прежнему.
Есть у рекордсета метод GetRows, пишет все строки в массив Variant. Можо копнуть сюда, но это должно быть ещё медленнее.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

skiperski
Идеолог
Идеолог
Аватара пользователя
 
Сообщения: 1386
Зарегистрирован: 25.06.2002 (Вт) 15:52

Сообщение skiperski » 15.06.2003 (Вс) 15:07

1. У Recordset есть полезная функция GetString(). Работает гораздо быстрее VB-шных циклов и конкатенаций.


Вернуться в Базы данных

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 210

    TopList