gpt4 book ai didi

mysql - 使用 DISTINCT 关键字忽略 MySQL select 中的重复条目

转载 作者:行者123 更新时间:2023-11-29 18:47:12 24 4
gpt4 key购买 nike

我在名为“advertises”的表中有这些值:

id         sitecatid      locationid
1 12 3
2 12 6
3 12 8
4 12 8
5 12 8
6 10 18
7 13 20
8 14 21

我想返回这样的结果:

sitecatid      locationid
12 3
10 6
13 8
14 18
20
21

基本上我只想要具有唯一 sitecatid 的任何记录的第一个实例和位置ID。

更新:

我尝试了这个查询,但结果不正确:

 SELECT DISTINCT sitecatid, locationid 
FROM advertisements
WHERE MATCH (sitetitle,sitedescription)
AGAINST ('$q' IN BOOLEAN MODE) AND status='approved'

上述查询的结果:

sitecatid      locationid
12 3
12 6
12 8
10 18
14 20
13 21

更新:

我可以对 sitecatid 使用两个查询 One,对 locationid 使用 secend,如下所示:

 SELECT DISTINCT sitecatid
FROM advertisements
WHERE MATCH (sitetitle,sitedescription)
AGAINST ('$q' IN BOOLEAN MODE) AND status='approved'

 SELECT DISTINCT  locationid 
FROM advertisements
WHERE MATCH (sitetitle,sitedescription)
AGAINST ('$q' IN BOOLEAN MODE) AND status='approved'

但我想对这两个使用一个查询

最佳答案

我认为实现此目的的唯一方法是检索一列中的数据,而不是两列,因为您试图从一行中的不同记录中获取值,我认为这是不可能的。

SELECT 'SITECATID' UNION
SELECT DISTINCT sitecatid
FROM advertisements
WHERE MATCH (sitetitle,sitedescription)
AGAINST ('$q' IN BOOLEAN MODE) AND status='approved' UNION
SELECT 'LOCATIONID' UNION
SELECT DISTINCT locationid
FROM advertisements
WHERE MATCH (sitetitle,sitedescription)
AGAINST ('$q' IN BOOLEAN MODE) AND status='approved';

关于mysql - 使用 DISTINCT 关键字忽略 MySQL select 中的重复条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44537946/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com