Вы можете просто использовать array_keys
:
echo array_keys($arr)[$pos];
Вот демонстрация , сравнивая ее с вашей функцией.
Вы после собственного SQL-запроса.
при использовании JPA, синтаксис:
Query q = em.createNativeQuery("select foo.* from Foo foo " +
"where f.x = max(f.x) over " +
"(partition by f.y)", Foo.class);
, Если необходимо возвратить несколько типов, смотрите на аннотация SQLResultSetMapping .
, Если Вы используете Быть в спящем режиме API непосредственно:
Query q = session.createSQLQuery("select {foo.*} from Foo foo " +
"where f.x = max(f.x) over "+
"(partition by f.y)");
q.addEntity("foo", Foo.class);
См. 10.4.4. Запросы в собственном SQL в Быть в спящем режиме документации для получения дополнительной информации.
В обоих API можно передать в параметрах как нормальное использование setParameter.
Можно добавить тестовый проект в текущее решение, а затем установить этот проект в качестве стартового. После этого при нажатии F5 на проект библиотеки классов начнется тестирование проекта.
-121--2578810-Пробовали ли вы моноразведку? Он может создавать и отлаживать код C, а не показывать, как он обрабатывает obj-c.
Если вы можете работать с DDD, я использовал это с хорошими результатами на многих странных платформах. DDD требует X11.
-121--1585384-Другим подходом было бы использование сопоставления. См. статью https://forums.hibernate.org/viewtopic.php?f=1&t=998482
Я против использования собственных SQL-запросов в Hibernate... вы теряете преимущества отображения: -)