首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用python-2.7构造此mysql select查询

如何使用python-2.7构造此mysql select查询
EN

Stack Overflow用户
提问于 2016-01-22 15:43:46
回答 3查看 683关注 0票数 0

我正在使用Python-2.7和mysql数据库,希望通过传递2个或2个参数中的任何一个参数,使用select语句从表student中检索数据,如下所示-

SELECT * FROM student_details where student_city='some_City' or student_stream='Science' or both

参数将被传递给操作SELECT语句的函数。

任何形式的指导/帮助,使我了解如何编写where子句部分。我不想做单独的查询。

如果我问错了或重复了问题,我深表歉意。提前感谢:)

EN

回答 3

Stack Overflow用户

发布于 2016-02-02 21:21:00

我试过了,最后这个方法对我有效-

代码语言:javascript
复制
 try:
        query = ("""SELECT * FROM student_details  WHERE """)
        if city is not '0' and Stream == '0':
              complete_query = query+("""student_city = %s""")

        elif Stream is not '0' and city == '0':
            complete_query = query+("""student_stream = %s""")

        else:
            complete_query = query+("""student_city = %s AND student_stream = %s""")

        if city is not '0' and Stream == '0':
            s_execute = self.cur2.execute(complete_query,(city,))

        elif Stream is not '0' and city == '0':
            s_execute = self.cur2.execute(complete_query,(Stream,))

        else:
            s_execute = self.cur2.execute(complete_query,(city),(Stream))
 except MySQLdb.Error as error:
                                print(error)

这是一些与上述建议类似的建议。感谢大家的指导。

票数 2
EN

Stack Overflow用户

发布于 2016-01-22 17:03:53

在MySQL周围使用python包装器,并使用execute()来运行您的want.For详细信息,请单击此链接

http://www.tutorialspoint.com/python/python_database_access.htm

票数 0
EN

Stack Overflow用户

发布于 2016-01-22 19:00:51

在参数化查询上检查此线程:

sql search query with multiple optional search parameters

希望这能回答您的问题:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34941475

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档