【问题标题】:how to change mysql concat code to pymysql code如何将mysql concat代码更改为pymysql代码
【发布时间】:2020-03-09 21:39:38
【问题描述】:

这是我的mysql代码

select ID, GROUP_CONCAT(CONCAT('{R_ICODE:"', R_ICODE, '", RANK:"',RANK,'"}')) list from RESULT where USER_ID='ehae065@daum.net' group by ID;

这是我的 pymysql 代码

cursor.execute("ID, GROUP_CONCAT(CONCAT('{R_ICODE:"', R_ICODE, '", RANK:"', RANK, '"}')) list from RESULT where USER_ID='ehae065@daum.net' group by ID")

当我运行 pymysql 代码时,我得到了语法错误,所以如果有人知道正确的方法 请教我 谢谢你

【问题讨论】:

    标签: python mysql mysql-workbench pymysql


    【解决方案1】:

    首先,您错过了您的select 声明,第二您需要escape 您的double quotes

    cursor.execute("SELECT ID
        , GROUP_CONCAT(CONCAT('{R_ICODE:\"', R_ICODE, '\", RANK:"', RANK, '\"}')) list 
        FROM RESULT WHERE USER_ID='ehae065@daum.net' group by ID")
    

    【讨论】:

    • 抱歉,我能再问一个问题吗?我想连接 ID 和所有 GROUP_CONCAT 内容,所以现在我得到了结果 4550, "{R_ICODE:\"675\", RANK:\"1\ "},{R_ICODE:\"924\", RANK:\"2\"},{R_ICODE:\"2304\", RANK:\"3\"},{R_ICODE:\"760\", RANK: \"4\"},{R_ICODE:\"2302\", RANK:\"5\"}" 但我想得到结果 ID:4550{ {R_ICODE:\"675\", RANK:\"1 \"},{R_ICODE:\"924\", RANK:\"2\"},{R_ICODE:\"2304\", RANK:\"3\"},{R_ICODE:\"760\", RANK :\"4\"},{R_ICODE:\"2302\", RANK:\"5\"}} 所以如果你不提醒你能教我如何更改查询吗?!
    • 试着去掉那些斜线让我们看看
    • 啊!我还问为什么斜线显示它我使用了flask api这个函数..
    • 用另一个双引号替换斜杠
    • 4550, "{R_ICODE:"675", RANK:"1"},{R_ICODE:"924", RANK:"2"},{R_ICODE:"2304", RANK:"3 "},{R_ICODE:"760", RANK:"4"},{R_ICODE:"2302", RANK:"5"}" 但我想得到结果 ID:4550{ {R_ICODE:"675", RANK :"1"},{R_ICODE:"924", RANK:"2"},{R_ICODE:"2304", RANK:"3"},{R_ICODE:"760", RANK:"4"},{R_ICODE :“2302”,排名:“5”}}
    猜你喜欢
    • 1970-01-01
    • 2017-09-23
    • 1970-01-01
    • 2015-09-22
    • 1970-01-01
    • 1970-01-01
    • 2020-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多