我正在使用spring-neo4j。我有一個實體稱爲用戶屬性(用戶名,名字,姓氏)和firstName和lastName是可選屬性。neo4j查詢爲可空屬性
現在我想實現一個用戶搜索查詢,它將搜索所有三個屬性。
@Query(value = "start user=node:__types__(className='com.xxx.entity.User') where user.username =~ {0} or user.firstName =~ {0} or user.lastName =~ {0} return user")
List<User> searchByName(String keyword);
查詢失敗說:
The property 'firstName' does not exist on Node[21].
不過,如果我只搜索上的用戶名,它給我的結果。我試過使用?運營商爲空的屬性:
@Query(value = "start user=node:__types__(className='com.xxx.entity.User') where user.username =~ {0} or user.firstName? =~ {0} or user.lastName? =~ {0} return user")
List<User> searchByName(String keyword);
但是,這將取我在哪裏的firstName或lastName的缺少所有節點。
任何想法如何實現此查詢?
此查詢不給任何錯誤,但它不會給我拿任何結果。 –
謝謝!操作員工作。 –