Rumah > Soal Jawab > teks badan
Model artikel adalah seperti berikut
Artikel kelas(model.Model):
title = models.CharField(max_length=150, verbose_name='文章标题', unique=True) content = models.TextField(verbose_name='文章内容') describe = models.CharField(max_length=500, verbose_name='文章描述', blank=True, null=True) date_publish = models.DateTimeField(auto_now_add=True, verbose_name="发布时间") click_count = models.PositiveIntegerField(verbose_name='点击次数', blank=True, null=True, default=0) keywords = models.ForeignKey(Keywords, blank=True, null=True, verbose_name='关键词') class Meta: verbose_name = '文章' verbose_name_plural = verbose_name ordering = ['-date_publish'] def __str__(self): return self.title
Pertanyaan: Jika terdapat berbilang keping data di bawah medan kunci asing "kata kunci", hanya satu keping akan diambil Untuk berbilang keping data, yang mempunyai bilangan klik terbesar akan diambil mengikut click_count, dan kemudian nilai tajuk/kandungan/huraian akan diperolehi dan output ke templat halaman web.
Saya ingin menggunakan sintaks pertanyaan, cara menulisnya
代言2017-06-20 10:07:37
Fungsi analisis mysql kata kunci (fungsi tetingkap), kerana mysql tidak menyokong max over, ia hanya boleh ditulis seperti berikut:
SELECT tt.*
FROM table tt
INNER JOIN (SELECT
keyword,
max(click_count) maxcount
FROM table
GROUP BY keyword) groupedtt ON tt.keyword = groupedtt.keyword AND tt.click_count = groupedtt.maxcount
ORDER BY tt.create_time