두 개의 sqlite 테이블에 각각 다른 항목과 수량이 들어 있습니다. 내가하고 싶은 일은 첫 번째 테이블을 반복하고, 첫 번째 테이블에서 수량을 선택하고, 항목 이름이 일치하는 두 번째 테이블에서 수량을 뺍니다. 말했듯파이썬에서 두 함수의 값을 빼는 방법
(표 1)
items | quantity ---------- sugar | 50 Pen | 10 apple | 50 berry | 1
번째 테이블 (사용자 입력에 의해 생성) (표 2) 그래서
items |quantity ---------- sugar |500 Pen |5 apple |8 berry |1
는, I는 표 1을 통해 루프 원하는 량을 얻을 설탕을 넣으십시오. 그런 다음 표 2를 반복하여 표 2의 설탕 양을 얻은 다음 최종적으로 값을 빼고 빼기가 수행 된 후에 값을 반환하십시오. 그런 다음 테이블 1의 다른 항목에 대해서도 동일한 작업이 수행됩니다 (루프)
예 : (500-50) - 설탕, (표 1에서 설탕의 수량 표 2에서 설탕의 양)을 사용 = 450 그 다음은 450 그래서 난 다른 기능
코드 예제에서 사용할 수있는 값을 반환합니다.
import sqlite3
db = sqlite3.connect('example.db')
#db.execute('create table Table1 (items text, quantity integer)')
#db.execute('create table Table2 (items text, quantity integer)')
a = 'Sugar'
b = 50
c = 500
db.execute('insert into Table1 (items, quantity) values(?,?)',(a, b))
db.execute('insert into Table1 (items, quantity) values(?,?)',(a, c))
db.commit()
db.close()
def one():
cursor = db.execute('select items from Table1')
for i in cursor.fetchall():
return i
def two():
cursor1 = db.execute('select quantity from Table1 where items = ?',(one()))
for i in cursor1.fetchall():
return i
def three():
cursor1 = db.execute('select quantity from Table2 where items = ?',(one()))
for i in cursor1.fetchall():
return i
def subtraction():
t = three() - two()
return t
내가 위의 코드 파일을 실행할 때 표시되는 오류 "C :/사용자/메가 마인드/문서/프로그래밍/Pycham 프로젝트/새 폴더/package.py"뺄셈에서, 라인 (22), t = 세() - two() TypeError : - : 'tuple'및 'tuple'에 대해 지원되지 않는 피연산자 유형
이 작업을보다 명확하게 수행 할 수있는 방법을 찾으십시오.
가능성이 복제 : http://stackoverflow.com/questions/17418108/elegant-way-to-perform-tuple-arithmetic – meyer9
[가능한 두 개의 다른 sqlite3 테이블에서 값을 빼는 방법] (http :// /stackoverflow.com/questions/42942389/how-to-subtract-values-from-two-different-sqlite3-tables-in-python) – GurV
그것을 복제 해 주어서 죄송합니다. 이전의 설명을 잘 설명하지 못했습니다. 다시 물어. 사과해. – Peter