1 回答

TA貢獻1813條經驗 獲得超2個贊
以下應該有效:-
@Query("SELECT * from drinksList WHERE list||',' LIKE '%'||:name||',%' OR list||',' LIKE :name||',%'")
這基于/使用以下方法進行了測試:-
DROP TABLE IF EXISTS DrinksList;
CREATE TABLE IF NOT EXISTS DrinksList (list TEXT UNIQUE NOT NULL);
INSERT INTO DrinksList VALUES
('Water, spicy, coke'), -- Should be found when searching for water
('Coke'), -- will not be found when seraching for water
('Spicy, water, coke'), -- Should be found
('Coke, spicy, water'), -- Should be found
('wateria, spicyer, cokeer'), -- should not be found
('Water, coke, 7up'), -- should be found
('Coke, waterera, 7up'), -- should not be found
('Waterg3d, coke, 7up'), -- should not be found
('Coke, water23, 7up') -- should not be found
;
SELECT * from drinkslist WHERE list||',' LIKE '%'||'water'||',%' OR list||',' LIKE 'water'||',%';
導致 :-
以上已經過測試,它確實在房間里工作:-
所有列表顯示:-
在編輯文本中輸入wAtER并單擊“選擇”按鈕會導致:-
進入7Up :-
等等。
查詢是:-
@Query("SELECT * FROM DrinkList WHERE list||',' LIKE '%'||:name||',%' OR list||',' LIKE :name||',%'")
List<DrinkList> getSelectiveDrinks(String name);
添加回答
舉報