具有 LIKE 条件的 MYSQL 查询没有给出正确的结果



我有不同表的数据库。如果满足某些条件,我正在尝试从表格电子邮件中获取电子邮件。条件之一是广告表中的广告名称(作为参数给出(必须包含来自合适广告表的合适广告的文本。我无法让这个条件工作(所有其他条件都很好(。

@Query( "SELECT e.email FROM SuitableAd sad " +
"JOIN sad.author a JOIN a.email e " +
"WHERE :name LIKE '%sad.text%'" +
" AND (:price BETWEEN sad.priceFrom AND priceTo) AND sad.category = :category")
List<String> findBySuitableAd(@Param("name") String name, @Param("price")BigDecimal price, @Param("category")
String category);

试试这个

@Query( "SELECT e.email FROM SuitableAd sad " +
"JOIN sad.author a JOIN a.email e " +
"WHERE sad.text LIKE '%:name%'" +
" AND (:price BETWEEN sad.priceFrom AND priceTo) AND sad.category = :category")

列表查找按适宜广告(@Param("名称"( 字符串名称,@Param("价格"(大十进制价格,@Param("类别"( 字符串类别(;

最新更新