使用MYSQL查询int字段时遇到问题

时间:2011-02-23 20:27:33

标签: python mysql sql database

嘿 我正在尝试运行以下查询:

     self.cursor.execute('SELECT courses.courseid, days, starttime, bldg, roomnum, '
                    'area, title, descrip, prereqs, endtime FROM '
                    'classes, courses, crosslistings, coursesprofs, profs WHERE '
                    'classes.courseid = courses.courseid AND '
                    'courses.courseid = crosslistings.courseid AND '
                    'courses.courseid = coursesprofs.courseid AND '
                    'coursesprofs.profid = profs.profid AND '
                    'classes.classid LIKE %s'
                    ';',
                    (self.classid))

classid是db中的int(11)字段。当我设置self.classid =%时,它会返回所有结果,但是一旦我将其设置为'3454'或其他一些金额,即使存在具有该classid的类,它也不会返回任何结果。我是否错误地查询了int字段?

甚至更简单的查询 select * from classes.classid ='3454';不起作用

2 个答案:

答案 0 :(得分:2)

尝试:

  

从classes.classid = 3454的类中选择*;

答案 1 :(得分:0)

我自己解决了这个问题。基于我的数据库结构,我正在查询错误的字段。我一直在寻找那些不存在的值,这就是为什么我总是返回一个空的结果集。感谢您对=运算符的帮助,但是已经使用了它。