如何使用 Orientjs 构建或喜欢查询?
How to build or like query using Orientjs?
我正在开发简单的查询生成器,它将用于生成 orientdb 查询。 Orientjs 有 statement.js 可以用来生成查询,但我不确定我们是否可以用来生成所有类型的查询。
例如:
select * from Employee where (FirstName like "A%" or FirstName like "B%") and (LastName like "G%" or LastName like "F%")
我尝试了不同的选项来使用 orientjs 语句生成上述查询,但无法生成。另外,我们如何生成查询以使用 insert, select query?
复制记录
statement.js是否支持生成此类查询?
对于复杂的 where 子句,您可以只使用原始字符串:
db.select()
.from('Employee')
.where('(FirstName like "A%" or FirstName like "B%") and (LastName like "G%" or LastName like "F%")').all();
要使用 select / insert 创建一个顶点的副本,您可以通过 db.let 函数创建一个交易,例如
return this.db
.let('original', (c) => {
c.select()
.from('Employee')
.where('(FirstName like "A%" or FirstName like "B%") and (LastName like "G%" or LastName like "F%")')
})
.let('copy', (c) => {c
.create('vertex','Employee')
.set('FirstName = $original[0].FirstName')
.set('LastName = $original[0].LastName')
})
.commit()
.return('$copy')
.one();
我正在开发简单的查询生成器,它将用于生成 orientdb 查询。 Orientjs 有 statement.js 可以用来生成查询,但我不确定我们是否可以用来生成所有类型的查询。
例如:
select * from Employee where (FirstName like "A%" or FirstName like "B%") and (LastName like "G%" or LastName like "F%")
我尝试了不同的选项来使用 orientjs 语句生成上述查询,但无法生成。另外,我们如何生成查询以使用 insert, select query?
复制记录statement.js是否支持生成此类查询?
对于复杂的 where 子句,您可以只使用原始字符串:
db.select()
.from('Employee')
.where('(FirstName like "A%" or FirstName like "B%") and (LastName like "G%" or LastName like "F%")').all();
要使用 select / insert 创建一个顶点的副本,您可以通过 db.let 函数创建一个交易,例如
return this.db
.let('original', (c) => {
c.select()
.from('Employee')
.where('(FirstName like "A%" or FirstName like "B%") and (LastName like "G%" or LastName like "F%")')
})
.let('copy', (c) => {c
.create('vertex','Employee')
.set('FirstName = $original[0].FirstName')
.set('LastName = $original[0].LastName')
})
.commit()
.return('$copy')
.one();