我在数据库中有一个列,我使用下面的代码从该列中获取不同的值
"SELECT DISTINCT category FROM galleryinfo"
我有另一列,其中包含相关图片的路径。
所以我的问题是如何从类别中获取唯一/不同的值以及从另一列获得相应的路径。
提前感谢您的帮助。
id path category
1 img1 car
2 img2 car
3 img3 truck
4 img4 truck
5 img5 bike
我需要的结果是
img1 car
img3 truck
img5 bike
答案 0 :(得分:1)
您可以使用GROUP BY查询将结果减少到每个不同类别的一行:
SELECT category, path FROM galleryinfo GROUP BY category
这个问题是这个查询返回的任意 路径。事实上,在大多数SQL实现中,这是一个非法查询并导致错误。 MySQL更宽松,但它将返回与类别相匹配的任意路径(实际上,它选择了第一行中与物理存储相关的路径,但这没有记录或保证)。
您可以选择MIN(path)
或MAX(path)
,也可以将每个类别的所有路径连接成一个带GROUP_CONCAT(path)
的字符串,但这就是它。