问题描述
表结构建立好后,以下是SQL代码?我想能够用excel导入到sqlServer后显示以下代码返回的所有行在导出到excel?代码该如何写,本人新手@.@感谢!SQL-代码selectname,workshop,sum(integral)frombirthdaywherefdate>='2014-07-01'groupbyworkshop,namehavingsum(integral)>=50orderbyworkshop,name;
解决方案
解决方案二:
如果就这需求,根本就不用借助sqlserver,直接用ado.net读出excel到excel,然后按条件统计出符合条件的数据,再存到excel里
解决方案三:
分两步,小导入,然后select。导入搜索npoi
解决方案四:
Excel导入SQLServer数据库数据示例//数据库连接操作#定义全局变量及对象stringM_str_Con="DataSource=mrwxk\wangxiaoke;Database=db_TomeOne;Uid=sa;Pwd=;";//定义数据库连接字符串SqlConnectionsqlcon;//声明数据库连接对象SqlCommandsqlcmd;//声明执行命令对象SqlDataAdaptersqlda;//声明数据桥接器对象DataSetmyds;//声明数据集对象#endregion//显示表格数据privatevoidFrm_Main_Load(objectsender,EventArgse){cbox_Condition.SelectedIndex=0;//默认选择条件为第一项dgv_Info.DataSource=SelectEInfo("","").Tables[0];//将数据库中的数据全部显示在数据表格控件中}//查询数据内容privatevoidbtn_Query_Click(objectsender,EventArgse){dgv_Info.DataSource=SelectEInfo(cbox_Condition.Text,txt_KeyWord.Text).Tables[0];//按条件查询数据}//获得数据库连接//<returns>返回SqlConnection对象</returns>privateSqlConnectiongetCon(){sqlcon=newSqlConnection(M_str_Con);//实例化数据库连接对象sqlcon.Open();//打开数据库连接returnsqlcon;//返回数据库连接对象}//将查询结果输出至Excel文件privatevoidbtn_Excel_Click(objectsender,EventArgse){if(dgv_Info.Rows.Count==0)//判断是否有数据return;//返回Microsoft.Office.Interop.Excel.Applicationexcel=newMicrosoft.Office.Interop.Excel.Application();//实例化Excel对象excel.Application.Workbooks.Add(true);//在Excel中添加一个工作簿excel.Visible=true;//设置Excel显示//生成字段名称for(inti=0;i<dgv_Info.ColumnCount;i++){excel.Cells[1,i+1]=dgv_Info.Columns[i].HeaderText;//将数据表格控件中的列表头填充到Excel中}//填充数据for(inti=0;i<dgv_Info.RowCount-1;i++)//遍历数据表格控件的所有行{for(intj=0;j<dgv_Info.ColumnCount;j++)//遍历数据表格控件的所有列{if(dgv_Info[j,i].ValueType==typeof(string))//判断遍历到的数据是否是字符串类型{excel.Cells[i+2,j+1]="'"+dgv_Info[j,i].Value.ToString();//填充Excel表格}//CodeGo.net/else{excel.Cells[i+2,j+1]=dgv_Info[j,i].Value.ToString();//填充Excel表格}}}}//查询信息//<paramname="str">查询条件</param>//<paramname="str">查询关键字</param>//<returns>DataSet数据集对象</returns>privateDataSetSelectEInfo(stringP_str_Condition,stringP_str_KeyWord){sqlcon=getCon();//打开数据库连接sqlda=newSqlDataAdapter();//实例化数据桥接器对象sqlcmd=newSqlCommand("proc_SelectEInfo",sqlcon);//调用存储过程sqlcmd.CommandType=CommandType.StoredProcedure;//指定要执行的命令为存储过程switch(P_str_Condition)//以查询条件为条件{case"职工编号":sqlcmd.Parameters.Add("@id",SqlDbType.VarChar,20).Value=P_str_KeyWord;//为存储过程添加ID参数sqlcmd.Parameters.Add("@name",SqlDbType.VarChar,30).Value="";//为存储过程添加Name参数sqlcmd.Parameters.Add("@sex",SqlDbType.Char,4).Value="";//为存储过程添加Sex参数break;case"职工姓名":sqlcmd.Parameters.Add("@id",SqlDbType.VarChar,20).Value="";sqlcmd.Parameters.Add("@name",SqlDbType.VarChar,30).Value=P_str_KeyWord;sqlcmd.Parameters.Add("@sex",SqlDbType.Char,4).Value="";break;case"性别":sqlcmd.Parameters.Add("@id",SqlDbType.VarChar,20).Value="";sqlcmd.Parameters.Add("@name",SqlDbType.VarChar,30).Value="";sqlcmd.Parameters.Add("@sex",SqlDbType.Char,4).Value=P_str_KeyWord;break;default:sqlcmd.Parameters.Add("@id",SqlDbType.VarChar,20).Value="";sqlcmd.Parameters.Add("@name",SqlDbType.VarChar,30).Value="";sqlcmd.Parameters.Add("@sex",SqlDbType.Char,4).Value="";break;}sqlda.SelectCommand=sqlcmd;//指定要执行的SelectCommand命令myds=newDataSet();//实例化数据集对象sqlda.Fill(myds);//填充DataSet数据集sqlcon.Close();//关闭数据库连接returnmyds;//返回数据集}
解决方案五:
是挺新的先不说具体方法光是从你的设计方案上就完全不合理既然你的数据本身就是从excel导入的,为什么不直接显示,而是先弄进数据库里再查询出来?
解决方案六:
1:sqlserver2008有直接将excel数据导入数据库的步骤,可以去网上搜索具体步骤2:导出数据到Excel,可以使用流导出;
解决方案七:
大致看了一下,你是因为excel没有筛选功能所以需要借助sqlserver?不用呀,你完全可以用excel自带的vba就可以筛选出你要的数据。或者你自己手动操作一下就可以了。