如何通过UniData多值字段中的元素选择

时间:2018-10-03 19:01:51

标签: unidata uniquery

我正在尝试对多值UniData字段的第一和第二个元素中包含重复值的记录进行临时搜索。我希望像这样的东西行得通,但是我没有运气。

LIST PERSON WITH EVAL "STATUS[1] = STATUS[2]"

经过一些测试,看起来我偶然发现了一种从右到左读取这么多字符的方法。有趣但对我需要的没有帮助。

LIST PERSON NAME EVAL "NAME[3]" COL.HDG 'Last3'

PERSON Name  Last3
0001   Smith ith

关于如何正确选择特定字段元素的任何想法?

显然,EXTRACT函数可以让我指定一个元素,但仍然无法对其进行选择以使其正常工作。

LIST PERSON STATUS EVAL "EXTRACT(STATUS,1,2,0)" COL.HDG 'Status2'

PERSON STATUS    Status2
0001   Added     Processed
       Processed 

1 个答案:

答案 0 :(得分:2)

我将eval与@RECORD占位符一起使用动态数组表示法(假设STATUS位于属性11中。

编辑: 先前的答案是我将如何在UniVerse中做到这一点

SELECT PERSON WITH EVAL "@RECORD<11,1>" EQ EVAL "@RECORD<11,2>"

Script Wolf在UniVerse和UniData中工作的更好的方法。

SELECT PERSON WITH EVAL "EXTRACT(@RECORD,11,1,0)" EQ EVAL "EXTRACT(@RECORD,11,2,0)"

祝你好运。