私はすでに以前のWindowsモバイルアプリケーションから開発しています。 私はテーブルを持っている:Windows Mobile:内部結合クエリdoesnt work
assetNo nvarchar(20)
roomno nvarchan(8)
status ncarchar(4)
Asset no RoomNo Status
001 DPN 0
002 TRG 4
003 SHW 1
004 ROOM 1
005 DPN 1
.
.
私は、出力は次のようになりますroomno
によってステータスと独立した状態0とすべてのレコード、グループによって収集したい:私は、クエリを持って
RoomNo Status0 sllstatus
DPN 1 2
TRG 0 1
SHW 0 1
ROM 1 1
このように:
SELECT a.RoomNo , a.Scanmanual AS ScanManual, b.allscan AS AllScan
FROM
(SELECT roomno, count(*) AS scanmanual
FROM assets
WHERE status = 0
GROUP BY roomno) AS a
INNER JOIN
(SELECT roomno, count(*) AS allscan
FROM assets
GROUP BY roomno) AS b ON (a.roomno=b.roomno)
このクエリはsql servでうまく動作しています私は、エラーを持つのVisual Studio 2005で実行すると、ERコンパクト版が、
private void Summary_Load(object sender, EventArgs e)
{
Cursor.Current = Cursors.WaitCursor;
string sql ="SELECT a.RoomNo , a.Scanmanual AS ScanManual, b.allscan AS AllScan from (select roomno, count(*) AS scanmanual from assets WHERE status = 0 group by roomno) AS a inner join (select roomno, count(*) AS allscan FROM assets group by roomno) as b on(a.roomno=b.roomno)"
SqlCeDataAdapter da = new SqlCeDataAdapter();
try
{
DataSet ds = new DataSet();
da.SelectCommand = new SqlCeCommand(sql, dbConn);
da.Fill(ds, "Assets");
dataGrid.DataSource = ds.Tables["Assets"];
}
catch (SqlCeException ex)
{
MessageBox.Show(ex.Message,
"DB Operation SDF", MessageBoxButtons.OK, MessageBoxIcon.Exclamation,
MessageBoxDefaultButton.Button1);
}
finally
{
Cursor.Current = Cursors.Default;
da.SelectCommand.Dispose();
da.Dispose();
}
}
"クエリを解析エラー、があった[トークンの行番号= 1は、Tokerは選択=エラーで、= 78をofset]"このエラーを修正するにはどうすればよいですか?ありがとう
SQLで 'status'はSQLキーワードまたはSQLテーブルフィールドをクエリしていますか?おそらく、Visual Studioはどちらも知らないでしょう。 – jp2code