如何在c#uwp中使用LIKE运算符的sqlite select查询

时间:2016-12-09 12:04:16

标签: c# windows sqlite

如何使用sqlite使用LIKE运算符选择查询。我在uwp应用程序中使用sqlite。我不能在这里使用SqliteCommand类。谁能吸引我。

using (db = new SQLiteConnection(new SQLitePlatformWinRT(), db.DatabasePath))
{
    var result = db.Query<Sku_Price_List>(@"SELECT * FROM Sku_Price_List WHERE sku_id LIKE '%eve%' OR sale_price LIKE '%eve%'  OR description LIKE '%eve%'");
}

此代码正在运行,但与运算符一样,我想动态传递字符串。帮助我。

1 个答案:

答案 0 :(得分:2)

您需要使用以下方法:

public Sku_Price_List GetPriceList(string likeCriterion) {
    using (db = new SQLiteConnection(new SQLitePlatformWinRT(), db.DatabasePath))
    {
        var result = db.Query<Sku_Price_List>(@"SELECT * FROM Sku_Price_List WHERE sku_id LIKE '%"+likeCriterion+"%' OR sale_price LIKE '%"+likeCriterion+"%'  OR description LIKE '%"+likeCriterion+"%'");
        return result;
    }  
}

使用新的C#6.0语法可以简化:

var result = db.Query<Sku_Price_List>($"SELECT * FROM Sku_Price_List WHERE sku_id LIKE '%{likeCriterion}%' OR sale_price LIKE '%{likeCriterion}%'  OR description LIKE '%{likeCriterion}%'");