如何检查两列的存在'两个不同表中的数据? MySQL的

时间:2016-06-23 00:47:28

标签: mysql sql database

我在两个不同的数据库中有两个不同的表..

我想要做的是检查另一个表中是否存在两列的数据..如果它确实存在则计算它,并且在最后我想要在另一个表中匹配的记录数。

示例:

table_1

column_1 value =" dog"

column_2 value =" apple"

table_2

column_1 value =" dog"

column_2 value =" orange"

所以这里两个表中都存在第一列值,但第二列不同,所以我不想计算它...我想计算同一记录中两个值存在的位置。

ps:column_1和column_2都不是主键

是否有使用MySQL的解决方案?因为我用java来解决这个问题,但需要很长时间才能获得500万条记录。

2 个答案:

答案 0 :(得分:1)

在两个表上执行@property (nonatomic, strong) RLMResults *items; @property (nonatomic, strong) RLMNotificationToken *token; // --- self.items = [TERMessage objectsWhere:@"conversationID == %@", self.model.serverID]; self.token = [self.items addNotificationBlock:^...]; // --- - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section { return self.items.count; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath { TERMessage *message = self.items[indexPath.row]; UITableViewCell *cell = ...; //configure cell return cell; }

INNER JOIN

答案 1 :(得分:1)

如果我正确理解您,可以选择使用exists

select * 
from table1 t1
where exists (
    select 1
    from table2 t2 
    where t1.column1 = t2.column1 and
          t1.column2 = t2.column2
)

这将返回第一个表中的行列表,这些行在第二个表中具有相应的匹配行。