2012-11-15 1 views
1

У меня есть запрос, где мне нужно использовать ключевое слово DISTINCT, проблема в том, что поле, которое у меня есть в select, имеет тип MEMO (должно быть так из-за его большого содержимого ...).Как работать с полями Memo, перечисленными в запросе SELECT, в foxpro 9?

SELECT distinct customerid, commentdate, commenttext.... 

не принимается в FOXPRO 9, поскольку поле commenttext является f type Memo! любая идея?

+0

Как упоминала Тамар, какова настоящая цель «отличного», что вы хотите. Не могли бы вы попытаться опубликовать весь запрос, который вы ищете. Это может помочь для окончательного решения. – DRapp

ответ

0

Оберните поле памятки в сообщении SELECT в функции, например ALLTRIM.

SELECT distinct customerid, commentdate, ALLTRIM(commenttext)....

+0

попробовал это, он говорит: «Строка слишком длинная, чтобы содержать» ... я думаю, что я собираюсь усекать ... ведь это всего лишь комментарий :( – user1327073

1

У вас есть несколько вариантов, в зависимости от ваших потребностей:

1) Опустить поле мемо из запроса. 2) Используйте выражение для преобразования поля memo в символ. Например, LEFT (комментарий, 254).

Вы действительно пытаетесь применить отличное от поля напоминания? Какова ваша фактическая цель здесь?

Тамар

+0

не пытается иметь отдельные комментарии, но я не знаю, как чтобы отделить это поле от остальных полей, я пытаюсь получить различные значения, такие как даты, customerid и другие вещи ... – user1327073

+0

Просто оставьте поле memo вне запроса в этом случае. В конце концов, как только вы остальное отличается, использование конкретного поля memo не имеет смысла. –

0

Другой вариант заключается в использовании нечто вроде PHDBase, который является поиск текста индексатор для Visual FoxPro. Он позволяет индексировать и искать столбцы символов и поля напоминаний. И это невероятно быстро.