2012-04-10 9 views
3

動作させることはできません。その後が選択クエリは、私がCにMySQLデータベースから選択クエリを使用したい

mysql_query(conn,"SELECT SI AS SUBSCRIBER_ID ,TG2 AS TAG_ID, SUM(CTR) AS NBR FROM (SELECT H.SUBSCRIBER_ID AS SI, TG.TAG_ID AS TG1,T.TAG_ID AS TG2, COUNT(TG.TAG_ID) AS COUNTER,CASE WHEN (TG.TAG_ID = T.TAG_ID) THEN COUNT(TG.TAG_ID) ELSE 0 END AS CTR from content_hits H left join CONTENT_TAG TG ON TG.CONTENT_ID = H.CONTENT_ID LEFT JOIN TAG T ON 1= 1 GROUP BY H.SUBSCRIBER_ID, TG.TAG_ID,T.TAG_ID) AS TAB GROUP BY SI,TG2"); 

を、私は一次元の配列を埋めるために「NBR」を使用します。

私はこの試みた:

result = mysql_store_result(conn); 

while ((row = mysql_fetch_row(result))) 
{ 
    t[i]=*row['NBR']; 
    printf("%d",t[i]); 
} 

をしかし、それは動作しませんでした。

+1

http://mattgemmell.com/2008/12/08/what-have-you-tried/ –

+0

@holyどのように動作しませんか?エラーメッセージはありますか?予想外の結果ですか?問題の内容を具体的に記述してください。 –

+0

投稿を編集してクエリを追加できますか、おそらくテーブルのスキーマを追加できますか? – octopusgrabbus

答えて

2

t[i]=*row['NBR'];のように、列の列に名前でアクセスすることはできません。たとえば、fields = mysql_fetch_fields(result);を使用して列名を取得し、フィールド配列を繰り返して、どの列ID 'NBR'があるかを調べます。このIDはt[i]=row[id];で使用できます。これはすべてmysqlコネクタにあります。http://dev.mysql.com/doc/refman/5.0/en/mysql-fetch-fields.html

関連する問題