2014-02-28 37 views
0

我在名爲india的數據庫中有很多表。Mysql和PHP查詢獲取子表中的第一行

表名:信息,它看起來像這樣:(我只顯示3列,但它確實有很多)

primary_key place_name email 
1   Bangalore [email protected] 
2   Mumbai  [email protected] 
3   pune  [email protected] 
4   chennai  [email protected] 
5   delhi  [email protected] 

另一個表中的數據:它看起來像這樣

primary_key value name 
2    85  name1 
2    85  name2 
4    85  name1 
4    85  name2 
3    85  name1 
3    85  name2 
1    85  name1 
1    85  name2 
1    85  name3 

因此,只要有表格數據的主鍵相匹配,我想從第一張表中獲得信息

預期的輸出是這樣的

2  Mumbai [email protected] 2 85 name1 
2  Mumbai [email protected] 2 85 name2 
.... 
.... 

和輸出顯示按升序排列,即通過使用主鍵,我真的很新的網絡編程,請幫助我如何使用PHP做到這一點,我希望打印在中心的HTML頁面上,請做好要緊的,我會接受你的答案,如果它滿足了我的需要,我是初學者

+0

在第二TBL PK顯示你的數據不是唯一的,請mension確切的數據 – Jain

+0

在第二表中的primary_key實際上是在primary_key的參考首先??? – BKM

回答

0
$query="SELECT t1.primary_key, t1.place_name, t1.email, t2.primary_key, t2.value, t2.name 
FROM table1_name t1 INNER JOIN table2_name t2 
ON t1.primary_key = t2.primary_key ORDER BY t1.primary_key"; 

從*

$queryResult=mysql_query($query); 

function mysql_fetch_all($result) { 
    while($row=mysql_fetch_array($result)) { 
    $return[] = $row; 
    } 
    return $return; 
} 

$getResult= mysql_fetch_all($queryResult); 
echo $getResult[0]." ".$getResult[1]." ".$getResult[2]." ".$getResult[3]." ".$getResult[4]; 
+0

+1但是如何在php和html中完成? – user3304642

+0

非常感謝你接受答案..什麼'mysql_fetch_all'呢? – user3304642

+1

mysql_fetch_all()函數返回一個包含所需值的數組。 – hizbul25

1

它很容易,你必須在查詢前將它們連接:

SELECT t1.primary_key, t1.place_name, t1.email, t2.primary_key, t2.value, t2.name 
FROM table1_name t1, table2_name 
WHERE t1.primary_key = t2.primary_key; 

,但你需要全域,因此您可以使用此:

SELECT * 
FROM table1_name t1, table2_name 
WHERE t1.primary_key = t2.primary_key; 

希望能幫到你。

+0

您是否看到t2.primary_key不是主鍵'FYI' – Girish

+0

+1但是如何在php和html中完成? – user3304642

1
SELECT * FROM t1, t2 
where t1.primary_key = t2.primary_key 
order by t1.primary key 
+0

+1但是如何在php和html中完成? – user3304642