OrientDB:使用 gremlin 进行文本搜索
OrientDB: text searching using gremlin
我正在使用 OrientDB 和附带的 gremlin 控制台。
我正在尝试在文本 属性 中搜索模式。我有带 ebodyText 属性 的电子邮件顶点。问题是用 SQL 之类的命令和 Gremlin 语言查询的结果是完全不同的。
如果我使用 SQL 之类的查询,例如:
select count(*) from Email where eBodyText like '%Syria%'
它returns 24.
但是如果我在 gremlin 控制台中查询,例如:
g.V.has('eBodyText').filter{it.eBodyText.matches('.*Syria.*')}.count()
它returns none.
使用不同关键字的相同查询 'memo' returns SQL 161 次,但 gremlin 20 次。
为什么会这样? gremlin命令的语法有问题吗?有没有更好的方法在 gremlin 中搜索文本?
我猜想在使用 python 驱动程序 'pyorient' 的上传脚本中设置属性可能有问题。
Python script used to upload the dataset
感谢您的帮助。
我试过 2.1.15 没问题。
这些是记录。
已编辑
我在数据库中添加了一些顶点,现在 count()
是 11
查询:
g.V.has('eBodyText').filter{it.eBodyText.contains('Syria')}.count()
输出:
==>11
希望对您有所帮助。
我正在使用 OrientDB 和附带的 gremlin 控制台。
我正在尝试在文本 属性 中搜索模式。我有带 ebodyText 属性 的电子邮件顶点。问题是用 SQL 之类的命令和 Gremlin 语言查询的结果是完全不同的。
如果我使用 SQL 之类的查询,例如:
select count(*) from Email where eBodyText like '%Syria%'
它returns 24.
但是如果我在 gremlin 控制台中查询,例如:
g.V.has('eBodyText').filter{it.eBodyText.matches('.*Syria.*')}.count()
它returns none.
使用不同关键字的相同查询 'memo' returns SQL 161 次,但 gremlin 20 次。
为什么会这样? gremlin命令的语法有问题吗?有没有更好的方法在 gremlin 中搜索文本?
我猜想在使用 python 驱动程序 'pyorient' 的上传脚本中设置属性可能有问题。 Python script used to upload the dataset
感谢您的帮助。
我试过 2.1.15 没问题。
这些是记录。
已编辑
我在数据库中添加了一些顶点,现在 count()
是 11
查询:
g.V.has('eBodyText').filter{it.eBodyText.contains('Syria')}.count()
输出:
==>11
希望对您有所帮助。