您好我在php中尝试此查询运行正常,我必须在python中执行此操作
$select=mysql_query("SELECT DISTINCT A.entity_id AS entity_id ,A.email AS email,A.catquizid AS style_quiz_score ,A.catquizquesans AS style_quiz_answer,A.created_at AS date_joined,A.is_active AS is_active ,B.attribute_id AS attribute_id,B.value AS info FROM `customer_entity` AS A inner join `customer_entity_varchar` AS B on A.entity_id=B.entity_id WHERE B.`attribute_id` IN (1,2) limit 10",$conn);
$arr=array();
while($result= mysql_fetch_assoc($select))
{
if(!isset($arr[$result['entity_id']]['lastname'])){
$arr[$result['entity_id']]['firstname'] = $result['info'];
}
$arr[$result['entity_id']]['lastname'] = $result['info'];
$arr[$result['entity_id']]["email"]=$result['email'];
$arr[$result['entity_id']]["style_quiz_score"]=$result['style_quiz_score'];
$arr[$result['entity_id']]["style_quiz_answer"]=$result['style_quiz_answer'];
$arr[$result['entity_id']]["date_joined"]=$result['date_joined'];
$arr[$result['entity_id']]["is_active"]=$result['is_active'];
$arr[$result['entity_id']]["username"]=normalize_str($result['email']);
}
在python中我试过这个
def customer_migrate(request):
cursor = connections['migration'].cursor()
cursor.execute("SELECT DISTINCT A.entity_id AS entity_id ,A.email AS email,A.catquizid AS style_quiz_score ,A.catquizquesans AS style_quiz_answer,A.created_at AS date_joined,A.is_active AS is_active ,B.attribute_id AS attribute_id,B.value AS info FROM customer_entity AS A inner join customer_entity_varchar AS B on A.entity_id=B.entity_id WHERE B.attribute_id limit 4 ")
row = cursor.fetchall()
如何在python查询中使用while循环
答案 0 :(得分:1)
使用fetchone()或只是遍历游标:
row = cursor.fetchone()
while row is not None:
print row
row = cursor.fetchone()
或
for row in cursor:
print row