1

我有一张名为db.dataand的表db.info。该db.data表的每个条目都有一个namedateadded列。该info表对每个名称都有一个name和一个status列(状态是yn)。我想从 db.data 表中提取按日期添加到该数据库的所有名称的数据,但前提是状态(db.status 中的那个)为 n。

我一直在四处寻找JOIN,但这似乎只有在两个表中的数据相同时才有效。在这里,名称是相同的,但我希望从 db.data 中提取数据,但仅将“名称”单元格(在两个表中)的状态设置为“n”。

4

3 回答 3

1

据我了解,每name的数据对于两个表都是相同的。所以 aJOIN应该在这里工作:

SELECT db.data.*
FROM db.data
INNER JOIN db.info ON db.data.name = db.info.name
WHERE db.info.status = 'n'
于 2013-03-12T17:38:46.633 回答
1

您可以在两个表之间使用名称连接

SELECT d.name, d.date
FROM db.data d
    JOIN db.info i ON d.name = i.name
WHERE i.status = 'N'
ORDER BY d.date
于 2013-03-12T17:40:15.933 回答
1

我认为这就是你想要的:

select d.name, d.dateadded
  FROM db.info i, db.data d 
  WHERE i.name = d.name
    AND i.status = 'n';
于 2013-03-12T17:42:33.497 回答