powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите разобраться с UNION и MEMO полем
10 сообщений из 10, страница 1 из 1
Помогите разобраться с UNION и MEMO полем
    #33507983
VFP7
Инструкция вида:

SELECT S_st.name as name, S_glava.glava, S_podraz.podraz, S_c_st.c_st, S_rash.rash, SUM(B_record.sumgod) as sumgod, ;
sum(b_record.currentcharge) as currentcharge, sum(b_record.capitalcharge) as capitalcharge ;
FROM db!b_record ;
INNER JOIN db!s_glava ON B_record.linkglava = S_glava.linkglava ;
INNER JOIN db!s_podraz ON B_record.linkpodr = S_podraz.linkpodr ;
INNER JOIN db!s_c_st ON B_record.linkcst = S_c_st.linkcst ;
INNER JOIN db!s_rash ON B_record.linkrash = S_rash.linkrash ;
INNER JOIN db!s_st ON B_record.linkst = S_st.linkst ;
WHERE s_st.st <> '000' AND SUBSTR(S_st.st,1,1) <> '9' and b_record.month = 0 ;
GROUP BY 2, 3, 4, 5, S_st.st ;
UNION all ;
SELECT " " + S_rash.name as name, S_glava.glava, S_podraz.podraz, S_c_st.c_st, S_rash.rash, SUM(B_record.sumgod) as sumgod, ;
sum(b_record.currentcharge) as currentcharge, sum(b_record.capitalcharge) as capitalcharge ;
FROM db!b_record ;
INNER JOIN db!s_glava ON B_record.linkglava = S_glava.linkglava ;
INNER JOIN db!s_podraz ON B_record.linkpodr = S_podraz.linkpodr ;
INNER JOIN db!s_c_st ON B_record.linkcst = S_c_st.linkcst ;
INNER JOIN db!s_rash ON B_record.linkrash = S_rash.linkrash ;
INNER JOIN db!s_st ON B_record.linkst = S_st.linkst ;
WHERE SUBSTR(S_st.st,1,1) <> '9' and b_record.month = 0 ;
GROUP BY 2, 3, 4, 5

Выдает ошибку о несовместимости второго подзапроса с UNION.
Если убрать " " + из второго подзапроса (т.е. SELECT S_rash.name as name, ....), то все проходит...

Но мне нужно именно склеить строку с мемо полем. Таких UNION у меня будет штук 7, плодить курсоры - не хотелось бы.

Подскажите, если не трудно...
...
Рейтинг: 0 / 0
Помогите разобраться с UNION и MEMO полем
    #33508041
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё замечательно склеивается

Код: plaintext
1.
2.
3.
4.
5.
6.
CREATE CURSOR test (mem m)

INSERT INTO test (mem) VALUES (REPLICATE('a1', 10000 ))

SELECT mem FROM test ;
UNION ALL ;
SELECT " " + mem + REPLICATE('2',  100 ) FROM test

авторНо мне нужно именно склеить строку с мемо полем

Если имеется в виду, строку в первом SELECT-e склеит со вторым SELECT-ом, то используй (уж не знаю которое у тебя Мемо поле)

Код: plaintext
1.
SELECT CAST(S_st.name as m)  as name
...
Рейтинг: 0 / 0
Помогите разобраться с UNION и MEMO полем
    #33508098
memo поле - NAME

Заявляет : SELECTs are not UNION compatible.
...
Рейтинг: 0 / 0
Помогите разобраться с UNION и MEMO полем
    #33508123
Мне вообще нужно склеить два подзапроса поля Name во всех таблицах имеют тип MEMO

но почему то эта инструкция проходит без " " +

а с ней - ошибка
...
Рейтинг: 0 / 0
Помогите разобраться с UNION и MEMO полем
    #33508134
AleksMed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
АРТЕМЬЕВ ИЛЬЯМне вообще нужно склеить два подзапроса поля Name во всех таблицах имеют тип MEMO

но почему то эта инструкция проходит без " " +

а с ней - ошибка

Если есть пустые мемо0поля, то во втором запросе вместо мемо-поля получаешь C(1) - вот тебе и несоответствие.
...
Рейтинг: 0 / 0
Помогите разобраться с UNION и MEMO полем
    #33508137
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У тебя этих Name аж 2 штуки, которое из них

Код: plaintext
1.
S_st.name
S_rash.name  

Кстати пардон пропустил VFP7.

А для чего во втором Select-e пробел добавлять.
...
Рейтинг: 0 / 0
Помогите разобраться с UNION и MEMO полем
    #33508157
Хотя да Ваш код сработал в 7 фокспро с сервис паком, а мой - нет

Но мой сработал без изменений в 9 фокспро... бардак...
...
Рейтинг: 0 / 0
Помогите разобраться с UNION и MEMO полем
    #33508172
пробел добавлять, чтобы потом они вверх ушли - сортировка

сейчас правда мемо поля все в закорючках, но работает... как кстати от них избавится????

все поля Name во всех таблицах - memo
...
Рейтинг: 0 / 0
Помогите разобраться с UNION и MEMO полем
    #33508208
SP1 поставил - крякозяблы исчезли...
...
Рейтинг: 0 / 0
Помогите разобраться с UNION и MEMO полем
    #33509178
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi ИЛЬЯ!

Для сортировки лучше заведи другое поле - и проставь в первом запросе туда 1
а во втором 0 например...
В VFP9 есть проблема с memo полями - если таблица в "неродной" CP то memo
поля не конвертируются - исправлено в SP1. Впрочем я бы по любому не
советовал работать с таблицами с неродной CP

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите разобраться с UNION и MEMO полем
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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