日期:2014-05-18  浏览次数:20816 次

datagridview两列显示实现两个不同的查询
图片只是说明我要达到的效果

蓝的显示car_fee_flag = 1,红的显示 car_fee_flag = 2
需要第一列显示是的car_fee_flag = 1查询结果,第二列是 car_fee_flag = 2的查询结果,要显示在一个DGV里。

现在的代码只能显示car_fee_flag =2的查询结果,下载要在后面加上car_fee_flag=1的查询结果

C# code

sql_str = "select count(car_fee_id) from car_park_fee where car_fee_end convert(varchar(5)
,car_fee_end,108) between '09:00:01' and '10:00:00'and car_fee_flag = 2" +
"union all select count(car_fee_id) from car_park_fee where car_fee_end and convert(varchar(5)
,car_fee_end,108) between '10:00:01' and '11:00:00'and car_fee_flag = 2 ;
SqlConnection conn = new SqlConnection(fee_conn.sql_conn());
                SqlCommand cmd = new SqlCommand(sql_str, conn);
                find_do = new SqlDataAdapter();
                find_do.SelectCommand = cmd;
                ds = new DataSet();
                try
                {
                    find_do.Fill(ds, "rs");
                    d_report.Visible = true;
                }
                catch (System.Exception sqler)
                {
                    MessageBox.Show("数据库不存在或用户名密码错误!");
                    return;
                }             

                d_report.DataSource = ds.Tables["rs"];
                d_report.Columns[0].HeaderText = "离开车辆数(辆)";
                
                d_report.RowHeadersWidth = 120;
                d_report.Rows[0].HeaderCell.Value = "09:00-10:00";
                d_report.Rows[1].HeaderCell.Value = "10:00-11:00";



------解决方案--------------------
第一,手动添加行列,不要绑定
第二,sql中处理组合成 一个数据集
第三,两个数据集,自己合并成一个

我想基本的的就是这些操作了吧