0

表一:

field1 field2
x1     x1

表 b:

field 1
x1

如何在表 b 上选择字段 1 = 表 a 的字段 1?

如果表 b 的名称是表 a 的 field1,当所选表为 a.field1 时执行连接的语法是什么

这是我正在使用的实际查询:

mysql_query("SELECT * FROM tags WHERE id3='$value' AND flag!='w' AND visibility='t' JOIN tags.albumid WHERE photoid=tags.photoid AND visibility!='d' ORDER BY datetimep DESC LIMIT 200");
4

6 回答 6

2

根据您的任务的复杂程度,您可以简单地连接具有相同值的行:

Select * from a, b where a.field1 = b.field2

或使用连接:

select a.* 
from Tableb b
join Tablea a
on a.field1=b.field1

在第一种情况下,如果要避免包含相同数据的多行,则可能必须再次使用Distinct关键字进行过滤

至于连接,有不同的类型。请参阅 eggyal 的链接。

于 2012-10-04T12:11:42.807 回答
0

了解SQL 连接

SELECT * FROM tablea JOIN tableb USING (field1)
于 2012-10-04T12:07:39.100 回答
0
select a.* 
from Tableb b
join Tablea a
on a.field1=b.field1
于 2012-10-04T12:08:09.490 回答
0

假设要加入的字段名在两个表中相同:

SELECT fieldx, fieldy FROM table_1 NATURAL JOIN table_b

如果要加入的字段名不相同 - 或者您想要明确,因为您可能有其他同名的字段名 - 您必须通过JOIN .. ONorJOIN .. USING指令指定这些。

于 2012-10-04T12:08:17.567 回答
0
select a.field1, a.field2 from table a, table b
where a.field1=b.field1;
于 2012-10-04T12:08:32.363 回答
0
select * from table_a join table_b
USING (field1)

参考这个:MySql Join

于 2012-10-04T12:09:14.403 回答