php MYSQL -从不同的数据库中选择

qco9c6ql  于 2023-09-29  发布在  PHP
关注(0)|答案(3)|浏览(127)

如何将同一查询中的数据从两个不同的数据库选择到同一服务器中?这就是我正在做的,但我的查询不起作用:

$sqlquery = "SELECT * FROM database_2.table_2 WHERE database_1.table_1.data_1 LIKE database_2.table_2.data_2";

$result = mysql_query($sqlquery);
$number = mysql_numrows($result);

$i = 0;
if ($number < 1) {
  print "DOH";

}else{
  while ($number > $i) {
    $content = mysql_result($result,$i,"database_2.table_2.data_3");
    print "$content";
    $i++;
  }
}
k97glaaz

k97glaaz1#

问题不在于不同的数据库。
您的WHERE子句引用了字段database_1.table_1.data_1,而该字段在FROM子句中没有提供。
你是不是想说

SELECT * 
FROM database_2.table_2 
JOIN database_1.table_1 
     ON (database_2.table_2.some_field = database_1.table_1.some_other_field) 
WHERE database_1.table_1.data_1 LIKE database_2.table_2.data_2


还有,

echo mysql_error();

在你失败的查询之后-这将给予你一个关于错误的线索。

nnt7mjpx

nnt7mjpx2#

试试这个

SELECT * FROM database_2.table_2 t2 INNER JOIN database_1.table_1 t1 
    ON  t1.data_1 = t2.data_2
0dxa2lsx

0dxa2lsx3#

数字不是有下划线吗?

$number = mysql_num_rows($result);

http://php.net/manual/en/function.mysql-num-rows.php

相关问题