sql >> データベース >  >> RDS >> PostgreSQL

HQL-配列に値が含まれているかどうかを確認します

    配列をマッピングするには、カスタムタイプが必要になります。これには、hibernate-typesプロジェクトを使用できます: https://vladmihalcea.com/how-to-map-java-and-sql-arrays-with-jpa-and-hibernate/

    e2.col3 = FUNCTION('ANY', e1.col3Arr)を使用しようとしましたか まだ?それでも問題が解決しない場合は、カスタムのSQLFunctionを作成することをお勧めします。 必要なSQLをレンダリングします。例:

    public class ArrayAny implements SQLFunction {
    
        @Override
        public boolean hasArguments() {
            return true;
        }
    
        @Override
        public boolean hasParenthesesIfNoArguments() {
            return true;
        }
    
        @Override
        public Type getReturnType(Type firstArgumentType, Mapping mapping) throws QueryException {
            return firstArgumentType;
        }
    
        @Override
        public String render(Type firstArgumentType, List args, SessionFactoryImplementor factory) throws QueryException {
            return "any(" + args.get(0) + ")";
        }
    }
    

    方言内で機能を登録する必要があります。



    1. Tomcat8サーバーを使用してOracle9データベースへの接続を作成中にAbstractMethodErrorを取得する

    2. MySQLmy.cnfファイル-先行するグループのないオプションが見つかりました

    3. PostgreSQLデータベースのコメントを取得するにはどうすればよいですか?

    4. 初めてのデータベース設計:私は過剰設計ですか?