如何正确使用distinct

yk9xbfzb  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(424)

我想创建一个页面来索引我所有的标题。
我想打印每个标题的第一个字。
例如,我有这样的标题
atitle1公司
atitle2公司
B标题3
V标题4
所以,我想创建这样的索引

A
atitle1
atitle2

B
btitle3

V
vtitle4

这是我要做的

SELECT * FROM master_post, 
      category_relation, 
      category WHERE category_relation.id_mp = master_post.id_mp 
      AND category_relation.id_c = category.id_c
      AND category.slug_c = 'dorama' AND 1 ORDER BY master_post.judul_mp ASC

我不确定,但我想是这样的 Distinct . 在这里 Distinct 我创造的

SELECT DISTINCT LEFT(judul_mp, 1) AS firstletter FROM master_post WHERE judul_mp = :judul_mp

但我不知道如何加入我的团队 distinct 代码,我试过了,但是出错了。

xpcnnkqh

xpcnnkqh1#

你可以这样做:

SELECT mp.judul_mp as str
FROM master_post mp JOIN 
     category_relation cr
     ON mp.id_mp = cr.id_mp JOIN
     category c
     ON cr.id_c = categcry.id_c
WHERE c.slug_c = 'dorama'
UNION ALL
SELECT DISTINCT LEFT(mp.judul_mp, 1)
FROM master_post mp JOIN 
     category_relation cr
     ON mp.id_mp = cr.id_mp JOIN
     category c
     ON cr.id_c = categcry.id_c
WHERE c.slug_c = 'dorama'
ORDER BY str;

注意正确、明确、标准的使用 JOIN 语法。不要在中使用逗号 FROM 条款。

相关问题