sql >> Database teknologi >  >> RDS >> PostgreSQL

Sæt indlejret forespørgsel i dvale ved hjælp af kriterier

Jeg tror, ​​dette vil passe til dine behov:

criteria.addOrder(Order.asc("name").ignoreCase())
        .setProjection(Projections.distinct(Projections.property("name")))
        .list();

eller dette kriterium bruger et DetachedCriteria med en navneprojektion som en underforespørgsel:

DetachedCriteria distinctNamesCriteria = DetachedCriteria.forClass(Person.class);
distinctNamesCriteria.setProjection(Projections.distinct(Projections.property("name")));

criteria.add(SubQueries.propertyIn("name", distinctNamesCriteria))
        .addOrder(Order.asc("name").ignoreCase())
        .list();


  1. Sådan genereres uuids uden bindestreger

  2. hvordan man forbinder til databasen på en anden server

  3. @@IDENTITY, SCOPE_IDENTITY(), OUTPUT og andre metoder til at hente sidste identitet

  4. mysql root-tilladelse til at opdatere informationsskema-fejl