0
난 다음 명령을 사용하여, 파이썬 2.7에서 sqlite3를 함께 읽고있다 데이터베이스가 있습니다변경 데이터 형식
# Change to database directory
os.chdir(data)
# Find database file
cur_db = glob.glob('*.db')
# Connect to database
con = sqlite3.connect('database.db')
c = con.cursor()
# Query database
print(len(available_table))
for row in c.execute('SELECT * FROM col1 '):
print row
나에게 같은 것을 제공 :
(1, u'2.3', u'brown', u'0', u'hairy', u'banana', u'2', u'monkey')
열의 값을보고 싶습니다. u'2.3'
보다 큰 값은 2
입니다. 그러나 이것은 숫자가 아닌 유니 코드 문자열이므로 숫자와 비교하기가 어렵습니다 (예 : 2
).
# Connect to database
con = sqlite3.connect('database.db')
c = con.cursor()
# Query database
c.execute('SELECT * FROM critter WHERE weight > 2'.
질문 :
적으로는, 내가 좋아하는 뭔가를하고 싶은 나는 조건문이 요소가 2
보다 큰 경우에만 데이터 행을 추출를 추가 할 수 있습니까? 데이터베이스를 변경하지 않고 그대로두고 싶습니다.
제가 물어 본 질문에 대해 귀하의 솔루션은 아마도 작동 할 것입니다 (나는 시도하지 않았습니다). 나는 정말로 묻고있는 것을 명확히하기 위해 질문을 편집했다. (예를 들어, for 루프를 사용하여 테이블에서 데이터를 추출하지 않는다.) – AaronJPung
@AaronJPung : 아, 알겠습니다. 답을 주셔서 감사합니다. 내 대답을 편집했습니다. – bernie
당신은 여러분의 솔루션이 완벽하게 작동합니다. 실행 호출에서'cast'를 사용하는 것을 결코 들어 보지 못했습니다. – AaronJPung