我公司的GPS数据库动态的记录了车辆的位置信息,GPS的数据库每天都往不一样的表插入,
现在我隔天查询的话 需要查多个表,就是 我在页面上放 开始时间和结束时间,应该如何写比较好
条件就是 :
车牌号:闽ABP303
开始时间:2013-01-07 10:31:58
结束时间:2013-01-09 23:31:58、
{现在查询的话 ,假如开始时间和结束时间是隔天的,这个时候我需要查询3个表,7.8.9表}
表的名称是 fzfcd1,2,3------一直到31,就是日期号码,意思就是当天是几号就往那张表插入数据,
比如今天是21号,就往fzfcd21插入数据。
以此类推。
查询全部记录数据库ASPNETNET

解决方案 »

  1.   

    这个根据日期拼接SQL语句就可以了吧
      

  2.   

    如何拼接, 是不是使用 UNION 进行连接,有没有例子呢?
      

  3.   

    简单的一个例子declare @sql varchar(5000)if 1=1
    set @sql='select * from table1'exec(@sql)
      

  4.   

    在代码里动态拼接sql,例如,
    车牌号:闽ABP303
    开始时间:2013-01-07 10:31:58
    结束时间:2013-01-09 23:31:58
    可以这样写string[] tablesname=GetTablesName();//通过时间段得到要用到的所有表名
    string wherestr = "车牌号='闽ABP303'";
    string sql = "select * from {0} where {1} ";
    StringBuilder sb = new StringBuilder();
    foreach(string table in tablesname){
       if(sb.Length > 0)
          sb.Append(" UNION ALL ");   
       sb.Append(string.Format(sql,table,wherestr));
    }
    ExcuteSql(sb.ToString());//执行这个sql