mysql中的连接查询

mysql中的连接查询,mysql,Mysql,我有这样的桌子结构 table1 table2 pid pname pid uid cat 1 a 1 1 1 2 b 1 2 1 3 c 1 3 1 select * from table1 as t1 LEFT JOIN table2 as t2 on t1.pid=t2.pid where t2.uid=1

我有这样的桌子结构

   table1       table2

    pid  pname       pid uid  cat
    1       a          1   1   1
    2       b          1   2   1
    3       c          1   3   1

select * from table1 as t1 LEFT JOIN table2 as t2 on t1.pid=t2.pid where t2.uid=1 AND t2.cat=1
选择这两行很重要

我不想对pid进行分组,因为表1中可能有相同的pid,所以我只需要获得与pid匹配的行数

这可能是个愚蠢的问题,但我努力了,什么也没得到

我希望你们能帮助我


如果要获取匹配的行数,请提前感谢

SELECT COUNT(*)
FROM table1 t1 INNER JOIN table2 t2 on t1.pid = t2.pid
WHERE t2.uid=1
您的左连接是不必要的,因为您正在按表2进行筛选


如果要获取匹配的行数:

SELECT COUNT(*)
FROM table1 t1 INNER JOIN table2 t2 on t1.pid = t2.pid
WHERE t2.uid=1
您的左连接是不必要的,因为您正在按表2进行筛选


您希望结果是什么样的?“选择两行”是一种选择,使用您发布的数据进行的查询将只返回一行。@Sugerman,“you people”=“Programmers”??X-)我将真实的查询和表格放在下面的url中,以供参考。您希望结果是什么样的?“选择两行”是非常重要的,您发布的数据查询只会返回一行。@Sugerman,“you people”=“Programmers”??X-)我将实际查询和表放在下面的url中ref@gowi只需在查询的末尾添加`AND t2.cat=1`。我将实际的查询和表放在下面的url中,用于ref@gowri,我发布的查询不起作用吗?你能在你的问题中解释一下你想要的结果是什么样的吗?我只想从表1中选择第四行。。请检查@gowri So add
和t2.product_id=19
哪个表是
table1
,哪个表是
table2
?@gowi只需在查询末尾添加`和t2.cat=1`。我将实际查询和表放在下面的url中,用于ref@gowri发布的查询是否无效?你能在你的问题中解释一下你想要的结果是什么样的吗?我只想从表1中选择第四行。。请检查@gowri So add
和t2.product_id=19
哪个表是
表1
,哪个表是
表2