首页 > 解决方案 > python执行后如何运行sqlite命令

问题描述

我有一个类似于 twitter 的应用程序,它带有 Python/Django 后端作为 API,带有用于数据库的 Sqlite。我的问题是如何在课堂上运行“内部加入”命令。请求是否可以简单地返回一个联合表而不必在数据库中创建它?

我有一个单独的表用于用户、推文和关注/关注者,因此当尝试调用数据时,我会发出多个 HTTP 请求以从每个表中获取信息。

SELECT a.id AS profile_id , a.first_name, a.last_name, a.username, b.tweet_text, 
         b.created_on, b.author_id AS profile_id, c.follower_id AS profile_id, c.followed_id
FROM authapi_user a
INNER JOIN authapi_tweet b
ON a.id=b.author_id
INNER JOIN authapi_follower c
ON a.id=c.follower_id

标签: pythonsqlite

解决方案


通过这个示例在 django 中执行原始 SQL 查询

from django.db import connection

def my_custom_sql(self):
    with connection.cursor() as cursor:
        cursor.execute(f"UPDATE bar SET foo = 1 WHERE baz = {[self.baz]}")
        cursor.execute(f"SELECT foo FROM bar WHERE baz = {[self.baz]}")
        row = cursor.fetchone()
    return row

推荐阅读