• mysql 报错 ‘u'Subquery returns more than 1 row'’


    watch_course_sql = """select  DATE_FORMAT( FROM_UNIXTIME(a.CreateTime / 1000) , '%%Y-%%m-%%d %%T') regtime,
        a.username
    FROM
        bskuser a
    where
        a.UserName
    in
        (select
            username
              from
                bskchapterlist
                    where
                        lessonid =
                            (select
                                    id
                                from
                                    bsklesson a
                                WHERE
                                    a.lessonname like '%s')
                                )
    limit   %d,50
    
    """ % (coursename, page*50)
    前台传来的coursename应该是汉字
    
    但是如果错误传来number的时候 
    
    后台会报错 
        
    ‘u'Subquery returns more than 1 row'’        只需在在相关的位置加个any就行啦
    最终的sql语句
      
    select  DATE_FORMAT( FROM_UNIXTIME(a.CreateTime / 1000) , '%Y-%m-%d %T') regtime,
                a.username username
            FROM
                bskuser a
            where
                a.UserName
            in
                 (select
                    username
                      from
                        bskchapterlist
                            where
                                lessonid =
                                    ANY (select
                                            id
                                        from
                                            bsklesson a
                                        WHERE
                                            a.lessonname like '%2%')
                                        )
    相关资料:http://stackoverflow.com/questions/778239/mysql-subquery-returns-more-than-one-row


    
    
  • 相关阅读:
    Entropy
    MonkeyEatsPeach
    python中使用可选参数
    java中二元数组的构建
    静态语言和动态语言
    开胃菜
    python 工具箱
    python处理多层嵌套列表
    小球落体
    LoadRunner:Error 27796
  • 原文地址:https://www.cnblogs.com/wanghaonull/p/6848442.html
Copyright © 2020-2023  润新知