我有一张如下表:
创建表 Foo(
id INT 主键,
键 VARCHAR,
值 VARCHAR
)
id 键值
1 嗨 ABCDE/FGHI
2 你好 DFGRT
3 嗨 FSEHU/
预先存在的库函数(为清楚起见进行了编辑):
char* Foo_getId(char *value){
char *query = "SELECT id FROM Foo WHERE value LIKE ?";
sqlite3_stmt *语句;
int rc = sqlite3_prepare_v2(连接,查询,strlen(查询),&语句,NULL);
rc = sqlite3_bind_text(statement, 1, value, strlen(value), SQLITE_STATIC);
rc = sqlite3_step(语句);
返回 strdup((char*)sqlite3_column_text(statement, 0));
}
我的功能:
字符 *getFooIdFromValueWithoutSlash(){
return Foo_getId("这里发生了什么???");
}
如何创建一个 LIKE 查询,使其匹配任何不包含“/”的值?
例如SELECT * FROM Foo WHERE value LIKE '%!/%'
注意:我尝试这样做的原因是我正在与其他人的代码交互,我只能传递放在 like 之后的值。