Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 如何使用SQLITE选择包含字符串的条目_Python 2.7_Sqlite_Sqlalchemy - Fatal编程技术网

Python 2.7 如何使用SQLITE选择包含字符串的条目

Python 2.7 如何使用SQLITE选择包含字符串的条目,python-2.7,sqlite,sqlalchemy,Python 2.7,Sqlite,Sqlalchemy,我有一个SQLite数据库,其中有一个表,表中有一个名为Support的列 “支持”列有一个值列表(a、B、C、D),但是该列表是字符串而不是数组,并且元素没有类型 我想选择列表中有A的条目。但是我不能将IN操作符用于内部查询,因为它是字符串而不是数组 我使用的是SQLAlchemy,文档中说使用SQLite作为后端时MATCH不起作用,所以我如何继续?如果我理解您的问题,您有一个名为Support的列,其中包含字符串,如a、B、C、D,您希望选择Support中元素的“列表”包含a的所有行 我

我有一个SQLite数据库,其中有一个表,表中有一个名为Support的列

“支持”列有一个值列表
(a、B、C、D)
,但是该列表是字符串而不是数组,并且元素没有类型

我想选择列表中有
A
的条目。但是我不能将
IN
操作符用于内部查询,因为它是字符串而不是数组


我使用的是SQLAlchemy,文档中说使用SQLite作为后端时MATCH不起作用,所以我如何继续?

如果我理解您的问题,您有一个名为Support的列,其中包含字符串,如
a、B、C、D
,您希望选择Support中元素的“列表”包含
a
的所有行

我的第一个想法是,您可以在select语句中使用通配符。因此,在SQL中,这将是:

SELECT * FROM my_table WHERE Support LIKE '%A%';
在SQLAlchemy中,这类似于:

session.query(MyTable).filter(MyTable.Support.like('%A%')).all()
或者,您可以在Python中获取所有数据并过滤内存中的列表。但是,通常我认为最好在数据库级别执行过滤