AgensGraph ver1.3版本中使用了哪些数组变量?

时间:2019-02-26 12:09:04

标签: cypher graph-databases agens-graph

我在AgensGraph版本1.3中使用了 但是我没有在运算符中使用where子句。

例如:

eya=# CREATE (a:person {name:['ljh','jhlee'], age:102});
GRAPH WRITE (INSERT VERTEX 1, INSERT EDGE 0)

CREATE TABLE t_name (
     name text,
     age int
);

CREATE TABLE
insert into t_name values ('ljh', '102');
INSERT 0 1
eya=# insert into t_name values ('khan', '101');
INSERT 0 1

eya=# SELECT *
FROM   t_name
WHERE  name IN (MATCH (a:person) WHERE a.age = 102 RETURN a.name);
  

错误:“ MATCH”处或附近的语法错误第3行:WHERE名称IN(MATCH   (a:person)a.age = 102 RETURN a ....

1 个答案:

答案 0 :(得分:0)

您应该在AgensGraph 1.3版中进行正则表达式。 因为1.3版本的自动和显式类型转换无法操作。 所以。您在下面执行查询

SELECT * FROM t_name在哪里输入名称(SELECT regexp_replace(unnest(string_to_array(t1.name::text,','))),'[^ a-zA-Z0-9]','','g' ) FROM(MATCH(a:person)WHERE a.age = 102 RETURN a.name)t1);

名称|年龄 ------ + -----  ljh | 102