繁体   English   中英

Select 为 boolean 使用 PostgreSQL 'crypt()' ZC1C425268E68385D1AB5074C17A9F4

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM