簡體   English   中英

帶有 LIKE 條件的 MYSQL 查詢沒有給出正確的結果

[英]MYSQL query with LIKE condition doesn't give right result

我有不同表的數據庫。 如果滿足某些條件,我會嘗試從表格電子郵件中獲取電子郵件。 條件之一是來自 Ad 表的廣告名稱(作為參數給出)必須包含來自合適廣告表的合適廣告的文本。 我不能讓這個條件起作用(所有其他條件都很好)。

@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")

List findBySuitableAd(@Param("name") String name, @Param("price")BigDecimal price, @Param("category") String category);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM