sql >> データベース >  >> RDS >> Mysql

MySQLdbを使用してSELECT...WHERE ...IN...を実行する

    残念ながら、クエリパラメータを手動で作成する必要があります。これは、私が知る限り、組み込みのbindがないためです。 listをバインドするためのメソッド INに HibernateのsetParameterList()に似た句 。ただし、次の方法でも同じことができます。

    Python 3:

    args=['A', 'C']
    sql='SELECT fooid FROM foo WHERE bar IN (%s)' 
    in_p=', '.join(list(map(lambda x: '%s', args)))
    sql = sql % in_p
    cursor.execute(sql, args)
    

    Python 2:

    args=['A', 'C']
    sql='SELECT fooid FROM foo WHERE bar IN (%s)' 
    in_p=', '.join(map(lambda x: '%s', args))
    sql = sql % in_p
    cursor.execute(sql, args)
    


    1. 複数のテーブルMySQLクエリ

    2. MYSQLのBlobデータをAndroidImageViewに変換する方法

    3. 演算子は存在しません:uuid =bytea Java with Postgres

    4. MySQLCLIより400倍長いPDOステートメント