首页 > 解决方案 > ProgrammingError at / ORDER BY "id" is ambiguous LINE 1: ...logapp_article.userid=blogapp_useradd.uname ORDER BY id DESC

问题描述

异常值:
ORDER BY "id" is ambiguous LINE 1: ...logapp_article.userid=blogapp_useradd.uname ORDER BY id DESC

来自views.py的错误位置

def 索引(请求):

ad1 = ads.objects.raw("select * from blogapp_ads order by id desc limit 1")
ad2 = ads.objects.raw("select * from blogapp_ads order by id desc limit 1 offset 1")
ad34 = ads.objects.raw("select * from blogapp_ads order by id desc limit 2 offset 2")
ob1 = news.objects.raw("select * from blogapp_news order by id desc limit 5")
obb = article.objects.raw(
    "select * from blogapp_article inner join blogapp_useradd on blogapp_article.userid=blogapp_useradd.uname ORDER BY id DESC LIMIT 14")
obj = article.objects.raw(
    "select * from blogapp_article inner join blogapp_useradd on blogapp_article.userid=blogapp_useradd.uname ORDER BY id DESC LIMIT 5")
ob = article.objects.raw(
    "select * from blogapp_article inner join blogapp_useradd on blogapp_article.userid=blogapp_useradd.uname ORDER BY id DESC")
return render(request, 'Guest/Index.html', context={'data9':obb, 'data3': ob1,'data1': ob, 'data2':obj, 'time': now,'data4':ad1,'data5':ad2,'data6':ad34})

标签: djangosqliteheroku

解决方案


如果无法查看表,我假设“id”作为属性存在于您要加入的两个表中。尝试将您的加入声明更改为:

ob = article.objects.raw(
    "select * from blogapp_article as a inner join blogapp_useradd as b on a.userid=b.uname ORDER BY a.id DESC")

推荐阅读