[英]Select as boolean using PostgreSQL 'crypt()' function
我正在尝试使用 jOOQ 复制以下 SQL 查询,但遇到了一些错误。 我想看看是否可以直接替换,然后再根据需要重新处理查询,所以只是寻找一些建议。
SELECT
user_password_hash = crypt(?, user_password_hash) AS is_password_match
roles
FROM system_users
WHERE user_name = ?;
我尝试了以下 jOOQ 替换,尽管它有编译错误:
DSL.using(connection, SQLDialect.POSTGRES)
.select(SYSTEM_USERS.USER_PASSWORD_HASH.equal(crypt(password, SYSTEM_USERS.USER_PASSWORD_HASH.getName())), SYSTEM_USERS.ROLES)
.from(SYSTEM_USERS)
.where(SYSTEM_USERS.USER_NAME.equal(userName));
我相信问题是#select() 调用的第一部分被解决为条件,而不是字段。 但我不确定如何最好地使用#equal() 调用使其成为字段。
有人有想法吗?
使用DSL.field(Condition)
将Condition
转换为Field<Boolean>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.