2011-11-07 12 views
0

私は2つのテーブルを持っています。C#/ SQL join issue

Table 1: supportstatus 

clientid 
company 
status 

Table 2: client 
clientid 
company 
status 
state 

グリッドビューの結果を分離するために、2つの列を持つ表も使用しています。私は現在、一方のテーブルの列に無効状態のクライアントと他方の対応する状態を返す2つのクエリを作成しようとしています。説明があれば助けてください。

protected void queryClientCompanyName() 
{ 
    string MyConString = "Driver={MySQL ODBC 5.1 Driver};Server=**;Database=support;User=**; Password=**;Option=3;"; 
    string queryString = "SELECT company FROM supportstatus WHERE status = 'disabled' Order By company"; 
    OdbcConnection conn = new OdbcConnection(MyConString); 
    conn.Open(); 
    OdbcCommand command = new OdbcCommand(queryString, conn); 
    OdbcDataReader reader = command.ExecuteReader(); 
    populateGrid(reader, GridView1); 
    conn.Close(); 
    RecordCountLabel.Text = GridView1.Rows.Count.ToString(); 
} 

protected void queryClientCompanyState() 
{ 
    string MyConString = "Driver={MySQL ODBC 5.1 Driver};Server=**;Database=support;User=**; Password=**;Option=3;"; 
    string queryString = "SELECT cl.state FROM clients cl, supportstatus su WHERE cl.clientid = su.clientid AND su.status='disabled' Order By cl.company"; 
    OdbcConnection conn = new OdbcConnection(MyConString); 
    conn.Open(); 
    OdbcCommand command = new OdbcCommand(queryString, conn); 
    OdbcDataReader reader = command.ExecuteReader(); 
    populateGrid(reader, GridView2); 
    conn.Close(); 
} 
+0

問題点を教えてください。 – user194076

+2

あなたの質問は明確ではありません、希望/サンプル出力を提供してください。 –

+0

私は結果を企業のリストにしたい。第2欄には、対応する会社が所在する状態が必要です。 – MasterP

答えて

2

あなたはあなたの両方を交換するには、次の問合せをするだけです必要があります。

SELECT su.Company 
    , cl.state 
FROM clients cl 
INNER JOIN supportstatus su ON cl.clientId = su.clientId 
WHERE su.status = 'disabled' 
Order By cl.company 

あなたはそれらが関連していることを知っているので、両方の値を返します。1つのクエリをしたいです。これは、あなたがテーブルを一緒に結合したいからです。私はちょうど簡単なGoogle検索を行いました。W3schoolsは基本的な情報を持っていますので、techrepublicこれらはデータベースのクエリの基本的な概念に役立ちます。

+0

彼のコメントを見ました。だからupvoteに変更されました:-) – stefan

+0

これは彼が意味していた場合、彼が応答するとき私たちが表示されます:) –

+0

それは私が欲しかったです。どのように正確に動作するか私に説明できますか? – MasterP