0

我有 2 张桌子:

函数式

idfunc | nomefunc | rg | cpf | etc...|
 10000 | example1 | 00 | 00  | etc...|
 10001 | example2 | 00 | 00  | etc...|

展览会

idferias | idfunc    | ferias...........|
00001  ..| ......... | example fe...    |
00002  ..| ......... | example fe...    |
00003  ..| ......... | example fe...    |

我想从每个来自ferias过滤的项目列表中获取。idfuncfuncionarios

我试过这段代码:

<?php
include('mysql.php');
if ($db_found) {
        $SQL = "SELECT idfunc FROM ferias AS idfunc FROM funcionarios";
        $result = mysql_query($SQL);

        while ( $db_field = mysql_fetch_assoc($result) ) {

                echo $db_field['idfunc']."<br>";
        }
} else {

print "Database NOT Found ";
mysql_close($db_handle);

}
?>

没有成功。

4

3 回答 3

1

由于您的两个表都有一个名为idfunc; 只需做一个自然连接,它将匹配公共字段或列上的表;在这种情况下idfunc,如下所示

SELECT ferias.* FROM ferias NATURAL JOIN funcionarios

在此处查看有关 mysql 连接的更多信息

于 2013-07-19T18:44:31.053 回答
0

如果我做对了,你需要的只是一个内部连接和 order by

$query = "SELECT * FROM ferias fer INNER JOIN funcionarios func ON func.idfunc = 
fer.idfunc ORDER BY idfunc DESC";
于 2013-07-19T18:37:48.570 回答
0

我猜你想要所有ferias的行都idfuncfunctionaris. 您可以使用以下查询来完成此操作:

SELECT ferias.idfunc FROM ferias JOIN functionarios ON ferias.idfunc = functionarios.idfunc

a JOIN b只会返回同时存在于a和中的行b您可以在此处找到文档。

于 2013-07-19T18:39:16.077 回答