2014-11-06 2 views
-1

아래 코드를 작성하여 200에서 300 사이의 범위를 선택했지만 작동하지 않는 경우 ORDER BY가 모두를 반환하는 것으로 보입니다. 값과 GROUP BY는 지정된 범위 밖에서 하나의 값만 반환합니다. 누구든지이 일에 불을 붙일 수 있습니까? 아래는 열 이름입니다. 나는 또한 모든 교환을 모으고 싶습니다. COUNT는 작동하지 않는 것 같았습니다. itertools가 작업에 적합한 도구인지 확실하지 않았습니다.sqlite3의 함수 by by 및 by order by Python의 열의 substr 값 집계

FIRST_NAME, LAST_NAME, 회사, 주소,시, 카운티, 주, 우편 번호, PHONE1, phone2, 이메일, 웹

import os, csv, json, re 
    import sqlite3 

    conn = sqlite3.connect('US_500.sqlite') 
    conn.text_factory = str 
    cursor = conn.cursor() 

    reader = cursor.execute ("SELECT phone1 FROM SampleData GROUP BY substr(phone1, 5) BETWEEN 200 AND 300") 


    tabledata = cursor.fetchall() 
    for row in (tabledata): 
     print str(row) 

    conn.close() 

답변

0

난 당신이 WHERE substr(... 대신 GROUP BY substr(... 싶은 생각합니다.

GROUP BY은 집계 쿼리를 쿼리합니다.

+0

같은 종류 값을 그룹화하려면 GROUP BY를 포함해야합니다. 나는 벌써 행운을 찾지 못했다. – user3724235