0
我想基于像这样的表达式过滤我的查询多种选择:SQLAlchemy的多个AND表达式创建于同一条目
self.query = self.query.filter(expression)
但是,当我将其过滤,查询增加了SELECT语句两次,这在MYSQL导致OperationalError:1060“重复的列名‘XXXX’这里是我的SQLAlchemy的表达:
'"var__490__07McUdXtiy".response IS NOT NULL AND "var__490__07McUdXtiy".response != :param_1 AND "var__490__07McUdXtiy".response = :param_2'
时,我有比之一,我才能有分割字符串更表达更多时才会发生。清楚地看到重复选择。它在t中是var__490__07McUdXtiy他导致如下:
['SELECT auth_user.id AS auth_user_id',
' auth_user.password AS auth_user_password',
' auth_user.last_login AS auth_user_last_login',
' auth_user.is_superuser AS auth_user_is_superuser',
' auth_user.username AS auth_user_username',
' auth_user.first_name AS auth_user_first_name',
' auth_user.last_name AS auth_user_last_name',
' auth_user.email AS auth_user_email',
' auth_user.is_staff AS auth_user_is_staff',
' auth_user.is_active AS auth_user_is_active',
' auth_user.date_joined AS auth_user_date_joined',
' `var__490__07McUdXtiy`.response AS `07McUdXtiy_short`',
' `var__490__07McUdXtiy`.response AS `07McUdXtiy_short` \nFROM auth_user INNER JOIN reviewroom_reviewroomgroup_members ON reviewroom_reviewroomgroup_members.user_id = auth_user.id AND reviewroom_reviewroomgroup_members.reviewroomgroup_id IN (%s',
' %s) LEFT OUTER JOIN surveys_responsegroup AS survey__490 ON survey__490.user_id = auth_user.id AND survey__490.deleted = %s AND survey__490.survey_id = %s LEFT OUTER JOIN surveys_response AS `var__490__07McUdXtiy` ON `var__490__07McUdXtiy`.group_id = survey__490.id AND `var__490__07McUdXtiy`.question = %s \nWHERE `var__490__07McUdXtiy`.response IS NOT NULL AND `var__490__07McUdXtiy`.response != %s AND `var__490__07McUdXtiy`.response = %s']
任何帮助将不胜感激,谢谢!