Php 在第二个查询中使用查询结果

Php 在第二个查询中使用查询结果,php,mysql,join,Php,Mysql,Join,我试图在第二个查询中使用一个查询的结果作为WHERE的一部分。我不确定如何最好地解决这个问题,非常感谢您的帮助: 第一个问题: $result = mysql_query("SELECT `keyword` FROM `history` ORDER BY `last_update` ASC LIMIT 1 "); while($row = mysql_fetch_array($result)) $keyword = $row['keyword']; 第二个问题 $result = mysql_

我试图在第二个查询中使用一个查询的结果作为WHERE的一部分。我不确定如何最好地解决这个问题,非常感谢您的帮助:

第一个问题:

$result = mysql_query("SELECT `keyword` FROM `history` ORDER BY `last_update` ASC LIMIT 1 ");
while($row = mysql_fetch_array($result))
$keyword = $row['keyword'];
第二个问题

$result = mysql_query("SELECT `id` FROM `data_store` WHERE `keyword`= [result from my first query] ORDER BY `id` DESC LIMIT 1");
while($row = mysql_fetch_array($result))
$id = $row['id'];
为了澄清,keyword.data\u存储与keyword.history相关

使用子查询

$result = mysql_query("
SELECT `id` 
FROM   `data_store` 
WHERE  `keyword` = (SELECT `keyword` 
                    FROM   `history` 
                    ORDER  BY `last_update` ASC 
                    LIMIT  1) 
ORDER  BY `id` DESC");
while($row = mysql_fetch_array($result))
$id = $row['id'];
使用子查询

$result = mysql_query("
SELECT `id` 
FROM   `data_store` 
WHERE  `keyword` = (SELECT `keyword` 
                    FROM   `history` 
                    ORDER  BY `last_update` ASC 
                    LIMIT  1) 
ORDER  BY `id` DESC");
while($row = mysql_fetch_array($result))
$id = $row['id'];
(剥离了PHP方面,因为它不相关)

(剥离了PHP方面,因为它不相关)

SELECT `id` FROM `data_store` WHERE 
  `keyword` IN (
    SELECT `keyword` FROM `history` ORDER BY `last_update` ASC LIMIT 1
  ) 
ORDER BY `id` DESC LIMIT 1