Как выбрать данные из нескольких таблиц на основе некоторых критериев и вставить их в другую таблицу? - PullRequest
0 голосов
/ 10 декабря 2018

Я работаю в корзине с питоном и колбой.Я хочу, чтобы, когда пользователь нажимает кнопку заказа на элементе, он перенаправляется в / cart / add / route, где выполняется оператор SQL для извлечения таких данных, как имя пользователя из таблицы пользователей, имя элемента и цена из таблицы allfood на основеидентификатор элементов, переданный в URL и адрес из таблицы delivery_address.как только эта информация будет собрана, она также будет добавлена ​​в таблицу shopping_cart, где она будет временно храниться, пока я не выясню следующий шаг.У меня проблемы с SQL, и я надеялся, что кто-то может исправить его, потому что он дает мне ошибку.

"INSERT INTO shopping_cart_tbl VALUES (username, address, item, cost) \
        SELECT user.username, addr.address, food.item_, food.cost \
        FROM register_tbl AS user FULL JOIN delivery_addresses_tbl AS addr FULL JOIN allfood_tbl AS food \
        ON user.username = addr.username AND food.id=%s"

ради того, чтобы знать, смогу ли я улучшить свой код с любыми предложениями, яопубликовать код для маршрута

 @app.route('/cart/add/<item_id>', methods=['POST', 'GET'])
 def sadd_to_cart(item_id):
    # do a cross join of the three tables maybe to retrieve the necessarinformation
    if 'userkey' in session:
        con = pymysql.connect("localhost", "root", "", "sampledb")
        cursor_full_join = con.cursor()
        sql="INSERT INTO shopping_cart_tbl VALUES (username, address, item, cost) \
            SELECT user.username, addr.address, food.item_, food.cost \
            FROM register_tbl AS user FULL JOIN delivery_addresses_tbl AS addr FULL JOIN allfood_tbl AS food \
            ON user.username = addr.username AND food.id=%s" 

        cursor_full_join.execute(sql, item_id)

        return render_template('homepage.html')

    elif 'userkey' not in session:
        return redirect('/login')
    else:
        return redirect('/login') 

Я ценю помощь.редактировать: я удалил ненужные кавычки.Сожалею.я по какой-то причине их не заметил

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...