python - Wie schreibe ich eine solche MySQL-Anweisung für GROUP BY in Django?
怪我咯
怪我咯 2017-06-07 09:24:57
0
2
777

Ich bin neu bei Django (auch ein Dreckskerl von MySQL)
Ich habe auf Baidu gesucht und versucht, eine MySQL-Syntax zu schreiben, aber ich kann nicht um Hilfe bitten MySQL ist

SELECT keywords_id, MAX(id) AS id FROM

GROUP BYnews_articlekeywords_id ORDER BY id DESC LIMIT 0,10

wobei „keywords_id“ der Fremdschlüssel der Tabelle „news_article“ im Artikelmodell ist;

Der Hauptzweck ist: Ich möchte die letzten 10 eindeutigen Daten im Feld „keywords_id“ in der Tabelle „news_article“ herausnehmen und die Werte anderer Felder lesen können (verwenden Sie zum ersten Herausnehmen diese MySQL-Syntax). den eindeutigen ID-Wert und verwenden Sie dann den ID-Wert, um die Werte anderer Felder bedingt zu extrahieren und sie dann auf der Vorlagenseite auszugeben.

Ich weiß nicht, ob die Problembeschreibung klar ist, deshalb bin ich hier, um Hilfe zu erhalten~

怪我咯
怪我咯

走同样的路,发现不同的人生

Antworte allen(2)
PHPzhong

若只是單純的數據分析處理,不涉及數據庫的多線程使用的話,建議使用pandas模塊,裡面有很好的groupby方法,你可以看一下是否直觀適用。
用於Django有django-pandas可用,建議試試。
pandas的語句你的東西很可能就會寫成:

import pandas as pd
...
df = pd.DataFrame(news_article.groupby('keywords_id'))
df.sort_values(by=['id'], ascending = False)[0:10]
世界只因有你
from django.db.models import Max

Article.objects.values('keywords_id').annotate(maxid=Max('id')).order_by['-id'][:10]

结构大致是这样,细节可能要调试下
参考
https://docs.djangoproject.co...

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage