我有一个表格,其中存储了某些单词或单词组。我想选择以大写字母开头的条目,没有空格,只包含字母。我的SQL看起来像这样:
select word from words where w_id > 100 AND word REGEXP '^[A-Z][A-Za-z]*$' limit 2000;
如何使用标准做同样的事情?
答案 0 :(得分:4)
试试这个:
List words = session.createCriteria(Word.class)
.setProjection(Projections.property("word"))
.add(Restrictions.and(Restrictions.gt("w_id",100), Restrictions.sqlRestriction(word REGEXP '^[A-Z][A-Za-z]*$')))
.setMaxResults(2000).list();