mysql - Tanya nilai unik medan tertentu dalam pangkalan data, diisih mengikut masa, bagaimana untuk menulisnya?
代言
代言 2017-06-20 10:05:37
0
1
978

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

代言
代言

membalas semua(1)
代言

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
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan