- [sqlite]parameters are not allowed in views 목차
sqlite를 처음 사용하면서 많은 부분에서 버벅대고 있다
점수 필드가 들어있는 테이블을 만들고
점수에 따른 ranking을 부여하여
내가 몇 등인지 알아내고
내 주변에 위로 4, 아래로 5...즉, 총 10개를 출력하는 문제를 만났다
맨 처음에
sql_3 = '''CREATE TEMP VIEW seouluser AS SELECT * FROM (
SELECT
name,
score,
RANK () OVER (
ORDER BY score DESC
) LengthRank
FROM
initial_thunder
)
WHERE
name = {};
'''
cur.execute(sql_3, ('이룸',)) 으로 실행하니 제목의 에러가 나왔다
CREATE VIEW 에서는 WHERE name= ? 즉 ? 를 사용할 수 없다
위 문장을 그대로 실행시키려면
sql_3 = '''CREATE TEMP VIEW seouluser AS SELECT * FROM (
SELECT
name,
score,
RANK () OVER (
ORDER BY score DESC
) LengthRank
FROM
initial_thunder
)
'''
cur.execute(sql_3)를 실행하여 seouluser라는 임시 VIEW 테이블을 만들고
SELECT name, salary FROM seouluser WHERE name= ?
이런 형식으로 사용하여야 한다.
'python & 라즈베리파이' 카테고리의 다른 글
[python]sleep( ) 함수 사용법 (0) | 2020.12.01 |
---|---|
[python]리스트 인덱스(Index), 리스트 자르기(Slicing), enumerate (0) | 2020.12.01 |
[tkinter]canvas에서 button이 삭제되지 않음(canvas 상의 위젯, 아이템 삭제) (0) | 2020.11.18 |
[python]SQLite 날자 시간을 기본값으로 넣기 (0) | 2020.11.18 |
[python]나눗셈, 몫, 나머지를 구하는 방법 (0) | 2020.11.17 |