2014-03-06 89 views
2

我有一個簡單的問題。我在那有這個疑問顯示在文本框中的數量

SELECT COUNT(Sex) AS Male, COUNT(Sex) AS Female 
FROM tblPersonalInfo 

可以請你告訴我怎麼顯示2個文本框的男性和女性的計數數據集設計表?你可以請檢查我的查詢是否正確?我是一個在visual studio c#2010新手。

形成我以前的項目,我使用這些從數據庫中檢索數據並顯示在文本框中。

public MAINDATABASEDataSet.tblPositionDataTable GetPositionData(string data) 
     { 
      MAINDATABASEDataSetTableAdapters.tblPositionTableAdapter ReturnPosition = new MAINDATABASEDataSetTableAdapters.tblPositionTableAdapter(); 
      return ReturnPosition.GetDataByPosition(this.txtSearch.Text.Trim()); 

     } 

} 
private void btnCompleteSearch_Click(object sender, EventArgs e) 
     { 

        MAINDATABASEDataSet.tblPositionDataTable GetPositionCommand1 = GetPositionData(this.txtSearch.Text); 
        MAINDATABASEDataSet.tblPositionRow GetPositionCommand2 = (MAINDATABASEDataSet.tblPositionRow)GetPositionCommand1.Rows[0]; 
        this.txtMainPosition.Text = GetPositionCommand2.Position.ToString(); 


      } 

,我使用此查詢:

SELECT Position 
FROM  tblPosition 
WHERE (ID = @IDMain) 
+0

向我們展示一些代碼。 – Sadique

+2

我可能錯了,因爲我沒有你的數據庫模式。但我認爲查詢應該是這樣的:'SELECT COUNT(*)from tblPersonalInfo GROUP BY SEX' – atoMerz

+0

你最好自己檢查你的查詢的完整性,如果你有任何問題,你可以問一下特定部分用你的想法。 –

回答

0

沒有看到任何代碼或背景是不可能的回答正確,但因爲它代表你的查詢將產生對男性同樣數量的女性。只計算你需要的東西類似

SELECT COUNT(Sex) AS Male, 
FROM tblPersonalInfo 
WHERE Sex = 'Male' 

然後第二個查詢女性。要不然

SELECT COUNT(Sex) 
FROM tblPeroncalInfo 
GROUP BY Sex 

或者,如果你真的需要它們爲spearate列:

SELECT SUM(CASE WHEN Sex = 'Male' 1 ELSE 0 END) AS Male, 
     SUM(CASE WHEN Sex = 'Female' 1 ELSE 0 END) AS Female 
FROM tblPersonalInfo 
+0

我唯一的問題是如何顯示計數結果在文本框中。我上面有一個例子,我如何在文本框中顯示其他查詢。 – Emman

+0

@eman如果您能夠在文本框中顯示查詢,那麼爲什麼不創建兩個查詢(即我的第一個示例),一個用於男性數量,另一個用於女性數量。然後繼續完全按照以前的方式進行。 – Dan

+0

thnx查詢,幫了我很多。 – Emman

0

查詢應該是這樣

SELECT COUNT(Sex) from tblPersonalInfo GROUP BY SEX 
0

您需要修改您的查詢是這樣的:

SELECT COUNT(sex) FROM tblPersonalInfo WHERE sex = 'male' 

int maleCount = (int)cmd.ExecuteScaler(); 

SELECT COUNT(sex) FROM tblPersonalInfo WHERE sex = 'female' 

int femaleCount = (int)cmd.ExecuteScaler(); 

您可以顯示c ount在兩個文本框中爲

textBoxMale.text = maleCount.ToString(); 
textBoxFemale.text = femaleCount.Tostring();