【问题标题】:how to deal with Memo fields listed in a SELECT query, in foxpro 9?如何处理 SELECT 查询中列出的备注字段,在 foxpro 9 中?
【发布时间】:2012-11-15 21:12:40
【问题描述】:

我有一个查询,我需要使用 DISTINCT 关键字,问题是我在选择中的一个字段是 MEMO 类型(因为它的内容很大所以需要这样......)。

SELECT distinct customerid, commentdate, commenttext....

在 FOXPRO 9 中不被接受,因为 commenttext 字段是 f 类型的 Memo ! 有什么想法吗?

【问题讨论】:

  • 正如 Tamar 所说,你想要的“独特”的真正目标是什么。您能否尝试发布您正在寻找的整个查询。它可能有助于最终解决方案。

标签: select foxpro visual-foxpro


【解决方案1】:

您有几个选择,具体取决于您的需要:

1) 从查询中省略备注字段。 2) 使用表达式将备注字段转换为字符。例如,LEFT(commenttext,254)。

您是否真的也尝试将 distinct 应用于备注字段?您在这里的实际目标是什么?

添马舰

【讨论】:

  • 不尝试使用不同的 cmets,但我不知道如何将此字段与我尝试获取不同值的其他字段分开,例如日期、customerid 和其他内容。 ..
  • 在这种情况下,只需将备注字段完全排除在查询之外。毕竟,一旦您将其余部分分开,使用特定的备注字段就没有意义了。
【解决方案2】:

SELECT 语句中的备注字段包装在ALLTRIM 等函数中。

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

【讨论】:

  • 试过了,它说“字符串太长无法包含”...我想我要截断了...毕竟这只是一个评论:(
【解决方案3】:

另一种选择是使用 PHDBase 之类的东西,它是 Visual Foxpro 的文本搜索索引器。它允许对字符列和备注字段进行索引和搜索。而且速度非常快。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-07
    • 1970-01-01
    • 1970-01-01
    • 2021-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-21
    相关资源
    最近更新 更多