子查询和从两个表中获取数据

时间:2015-04-29 11:56:30

标签: mysql mysql-workbench

我需要列出位于前3位的每个127.0.0.1 myapp.localhost 的{​​{1}},horse_id(例如是1,2或3位) 两次或更多次次。提示:尝试使用horse_name

我非常确定我必须从horse表中获取数据,其中包括WHERE...IN...HORSE以及来自{{1}的数据} table,其中包含列horse_id(放置马)。但horse_name表只有PRIZEPLACEPLACE列,因此我不确定如何将其与马表连接。

2 个答案:

答案 0 :(得分:1)

由于您在评论中发布了表格和数据而不是问题,因此很难弄清楚您的表格和数据,但请尝试这样做。

select horse.* 
  from horse
    inner join entry
      on horse.horse_id = entry.horse_id
  where entry.place <= 3
  group by horse.horse_id
  having count(horse.horse_id) >= 2

答案 1 :(得分:1)

SELECT horse_id,name
FROM HORSE
WHERE horse_id IN
(SELECT horse_id
FROM ENTRY
WHERE place <= 3
GROUP BY horse_id
HAVING count(horse_id) > 1);