2016-07-23 15 views
-2

私はこのクエリの結果に間違っています。結合クエリのエラー不明なインデックス

total_fund .name 

のように記述する必要があります:

total_fund.name 

、あなたはおそらくとにかくそれはあなたのクエリをこのように書く方が良いでしょう、ASエイリアスを必要とするクエリにタイプミスがあります

<?php 

include 'dbconfig.php'; 
$sql = 'SELECT SUM(total_fund.total_funds), total_fund .name from total_fund join project 
     WHERE total_fund.funds_id = project.project_id AND project_id=1200 GROUP BY project.project_id'; 
$retval = mysqli_query($dbconfig, $sql); 

while ($data = mysqli_fetch_array($retval)) { 

    echo $data['total_funds'] . '</br>'; 
    echo $data['name']; 
} 
?> 
+0

次のようなものでなければなりません: 'SELECT fields FROM table1 INNER JOIN table2 ON table1.field = table2.field WHERE conditions'? (私が 'ON'を使用したことに注意) – FirstOne

+0

また、結合で正しい列名を使用していることを確認してください。 'total_fund.funds_id = project.project_id'を使用しましたが、関連する列のようには見えません。 – FirstOne

+0

ドット名は何ですか? – Drew

答えて

1

select 
    total_fund.name 
    SUM(total_fund.total_funds) as total_funds 
from 
    total_fund join project on total_fund.funds_id = project.project_id 
where 
    project_id=1200 
group by 
    total_fund.name 
+0

クエリは正しいですが、エラーのみエイリアスの名前ですので、私はクエリを完了しました。おかあさん@fthiella –

0

ここでは完全なクエリです

<?php 

include 'dbconfig.php'; 
$sql = 'SELECT SUM(total_fund.total_funds)AS total, total_fund .name, project.Amount_to_be_raised from total_fund join project 
     where total_fund.funds_id = project.project_id AND project_id=1200'; 
$retval = mysqli_query($dbconfig, $sql); 

while ($data = mysqli_fetch_array($retval)) { 

    echo $data['total'] . '</br>'; 
    echo $data['name']; 
} 
?>