簡體   English   中英

在java中使用帶有like操作符和參數的select查詢

[英]Using select query with like operator and parameters in java

我想寫這個查詢:

SELECT * FROM products
WHERE name LIKE '%?%' 
OR description LIKE '%?%'

並在spring web應用程序中通過java執行它。 但這里的問題是,當我使用LIKE運算符時,它必須使用文字,但是當我寫'%?%' java 無法識別? 就像參數的占位符一樣,當我添加參數時,我收到錯誤消息,即我的查詢中沒有參數。

另外,如果我寫%?%沒有文字,我會得到語法錯誤。

您始終可以使用concat()

SELECT *
FROM products
WHERE name LIKE CONCAT('%', ?, '%') OR
      description LIKE CONCAT('%', ?, '%');

或者使用應用程序將通配符放入模式字符串中。

我想寫這個查詢:

SELECT * FROM products
WHERE name LIKE '%?%' 
OR description LIKE '%?%'

並在Spring Web應用程序中通過Java執行它。 但是這里的問題是,當我使用LIKE運算符時,它必須與文字一起使用,但是當我編寫'%?%' Java無法識別? 像參數的占位符一樣,當我添加參數時,出現錯誤,查詢中沒有參數。

另外,如果我寫%?%而不帶文字,則會出現語法錯誤。

暫無
暫無

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

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