У меня есть запрос MySQL, который отлично работает в MySQL Workbench, и из консоли, но не в Hibernate. Это ручный запрос: < /p> [code]select myfood.*, meals.date, meals.meal, meal_food.servings from myfood left join meal_food on myfood.fdc_id = meal_food.myfood_id left join meals on meal_food.meal_id = meals.id where myfood.user_id = 0 and meals.user_id = 0 and meals.date = '2025-06-19'; < /code> возвращается одна запись: < /p> fdc_id user_id brand category date meal servings 1872514 0 Kroger Juice 2025-06-19 Breakfast 1 < /code> Вот hebernate Query < /p> @Query(value = "select myfood.*, meals.date, meals.meal, meal_food.servings " + "from myfood " + "left join meal_food on myfood.fdc_id = meal_food.myfood_id " + "left join meals on meal_food.meal_id = meals.id " + "where myfood.user_id = 0 and meals.user_id = 0 and meals.date = '2025-06-19'", nativeQuery = true) < /code> Этот запрос называется из Java Spring Boot, как это: < /p> @GetMapping("/get-meals") public List getMeals() { List meals = mealRepo.findMyFood(); System.out.println("MealController.getMeals: meals.size() = " + meals.size()); return meals; } < /code> Я вижу запрос Hibernate, возвращенный в консоли: < /p>
> Hibernate: select myfood.*, meals.date, meals.meal, > meal_food.servings from myfood left join meal_food on > myfood.fdc_id = meal_food.myfood_id left join meals on > meal_food.meal_id = meals.id where myfood.user_id = 0 and > meals.user_id = 0 and meals.date = '2025-06-19' < /code> < /blockquote> , который возвращает 0 записей, а не ожидаемый 1. < /p> MealController.getMeals: meals.size() = 0 < /code> Я проверил тройной проверку, что модель Foodgui.java соответствует ожидаемым возвращаемым значениям: < /p> @NoArgsConstructor @AllArgsConstructor @Setter @Getter public class MealGui { private Long fdc_id; // from myfood table private Integer user_id; // from myfood table and meal table private String brand; // from myfood table private String category; // from myfood table private String date; // from meal table private String meal; // from meal table (e.g., Breakfast, Lunch, Dinner) private Float servings; // from meal_food table } < /code> и что поля модели соответствуют соответствующим именам столбцов таблицы, например: < /p> @Entity @Setter @Getter @NoArgsConstructor @AllArgsConstructor @ToString public class Meal { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") private Integer id;
У меня есть запрос MySQL, который отлично работает в MySQL Workbench, и из консоли, но не в Hibernate. Это ручный запрос:
select myfood.*, meals.date, meals.meal, meal_food.servings
from myfood
left join meal_food on myfood.fdc_id =...
У меня есть запрос MySQL, который отлично работает в MySQL Workbench, и из консоли, но не в Hibernate. Это ручный запрос:
select myfood.*, meals.date, meals.meal, meal_food.servings
from myfood
left join meal_food on myfood.fdc_id =...
У меня есть запрос MySQL, который отлично работает в MySQL Workbench, и из консоли, но не в Hibernate. Это ручный запрос:
select myfood.*, meals.date, meals.meal, meal_food.servings
from myfood
left join meal_food on myfood.fdc_id =...
У меня есть запрос MySQL, который отлично работает в MySQL Workbench, и из консоли, но не в Hibernate. Это ручный запрос:
select myfood.*, meals.date, meals.meal, meal_food.servings
from myfood
left join meal_food on myfood.fdc_id =...
У меня есть запрос MySQL, который отлично работает в MySQL Workbench, и из консоли, но не в Hibernate. Это ручный запрос:
select myfood.*, meals.date, meals.meal, meal_food.servings
from myfood
left join meal_food on myfood.fdc_id =...