如何在SQLite参数中使用通配符?

时间:2015-12-28 14:42:27

标签: sql sqlite

我无法弄清楚如何在SQLite中使用带有参数的通配符。

以下是我试图开始工作的代码:

@GamePara='Desert';
SELECT
    GameName
FROM Games
WHERE GameName LIKE '%' + @GamePara + '%';

此代码不返回任何结果。它应该返回'Desert'中包含字符串GameName的所有字段。

如果我直接用所需的值替换参数,如下所示,我可以得到所需的结果。

SELECT
    GameName
FROM Games
WHERE GameName LIKE '%Desert%';

我一般没有太多关于SQL参数的经验,所以我的问题也可能存在于其他版本的SQL中。

主持人编辑: 注意:在得到正确答案后删除问题是非常不好的习惯。

用户编辑:对不起,当我删除它时,我没有看到问题得到解答(我没有刷新页面)。我删除了这个问题,因为我意识到我问了错误的问题。我遇到的问题是我无法像在MySQL中那样设置参数。 (@GamePara='Desert';返回了消息Error: near "@GamePara": syntax error)。我曾尝试||连接,但参数设置是问题。

1 个答案:

答案 0 :(得分:0)

使用||进行字符串连接:

  

|| operator是“concatenate” - 它将两个字符串连接在一起   它的操作数。

@GamePara='Desert';
SELECT
    GameName
FROM Games
WHERE GameName LIKE '%' || @GamePara || '%';

比较

SELECT 'a' + 'b', 'a' || 'b'
-- 0 vs ab