如果未满足条件,则返回该用户的数据,否则返回另一个查询

时间:2018-02-25 21:11:00

标签: python mysql pymysql

我有一张包含这些数据的表格:

  ID, Name, LastName, Date, Type

我必须在表中查询ID为1的用户。 获取行,如果该用户的类型不是2,则返回该用户,否则返回具有相同LastName和Date的所有用户。

最有效的方法是什么? 我所做的是:

query1 = SELECT * FROM clients where ID = 1

query2 = SELECT * FROM client WHERE LastName = %s AND Date= %s

我执行第一个查询

 cursor.execute(sql)
 rows = cursor.fetchall()
 for row in rows:
     if(row['Type'] ==2 )
          cursor.execute(sql2(row['LastName'], row['Date']))
     Save results
      else
          results = rows?

使用Joins是否有更有效的方法? 例如,如果我只有左连接,我怎么还会询问用户的类型是否为2? 如果要返回多行,如何将它们分配给python中的对象数组?

0 个答案:

没有答案