联合查询到gridview
using com.DAL.Base;
using DAL.ruanmou;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls; namespace ASP20170211
{
public partial class UnionSearch : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
BindData();
}
public int PageSize = ;
private int _page;
public int PageIndex
{
get
{
try
{
_page = Request.QueryString["page"] == null ? : Convert.ToInt32(Request.QueryString["page"].ToString());
}
catch (Exception ex)
{
_page = ;
}
return _page;
}
set { _page = value; }
}
List<dbParam> listPm = new List<dbParam>();
public string GetSql()
{
StringBuilder sb = new StringBuilder();
sb.Append("1=1");
if (!string.IsNullOrEmpty(txtSUserName.Text.Trim()))
{
sb.Append(" and UserName=@UserName");
listPm.Add(new dbParam() { ParamName = "@UserName", ParamValue = txtSUserName.Text.Trim() });
}
if (ddlPhase.SelectedIndex > )
{
sb.Append(" and Phase=@Phase");
listPm.Add(new dbParam() { ParamName = "@Phase", ParamValue = ddlPhase.SelectedValue });
}
return sb.ToString();
}
public void BindData()
{
DataTable dt = StuAskDal.GetUserInnerAskDt(PageSize, PageIndex, GetSql(), listPm);
GridView1.DataSource = dt;
GridView1.DataBind();
}
/// <summary>
/// 总页数
/// </summary>
/// <returns></returns>
public int PageCount()
{
int iCount = StuAskDal.GetUserInnerAskCount(listPm, GetSql());
if (iCount % PageSize == )
{
return iCount / PageSize;
}
else
{
double d = Convert.ToDouble(iCount) / Convert.ToDouble(PageSize);
return Convert.ToInt32(Math.Ceiling(d));
}
}
/// <summary>
/// 分页
/// </summary>
/// <returns></returns>
public string GetPager()
{
StringBuilder sb = new StringBuilder();
sb.Append(@"<div><a href=""/UnionSearch.aspx?page=1"">第一页</a></div>");
if (PageIndex == )
{
sb.Append(@"<div><a href=""javascript:;"">上一页</a></div>");
}
else
{
sb.Append(string.Format(@"<div><a href=""/UnionSearch.aspx?page={0}"">上一页</a></div>", PageIndex - ));
}
if (PageIndex == PageCount())
{
sb.Append(@"<div><a href=""javascript:;"">下一页</a></div>");
}
else
{
sb.Append(string.Format(@"<div><a href=""/UnionSearch.aspx?page={0}"">下一页</a></div>", PageIndex + ));
}
sb.Append(string.Format(@"<div><a href=""/UnionSearch.aspx?page={0}"">尾页</a></div>", PageCount()));
sb.Append(string.Format("<div>{0}/{1}</div>", PageIndex, PageCount()));
return sb.ToString();
}
protected void btnSel_Click(object sender, EventArgs e)
{
//自动执行Page_Load
}
}
}
UnionSearch
using com.DAL.Base;
using Model.ruanmou;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace DAL.ruanmou
{
//联合查询
public class StuAskDal : System.Web.UI.Page
{
public static BaseDAL<StuAsk> m_RNewsDal = new BaseDAL<StuAsk>(); /// <summary>
/// 获取到当前条件下的记录数
/// </summary>
/// <param name="para"></param>
/// <param name="sWhere"></param>
/// <returns></returns>
public static int GetUserInnerAskCount(List<dbParam> para, string sWhere)
{
string sSql = string.Format(@"select UI.UserId from UserInfor
26 UI inner join StuAsk SA on UI.UserId=SA.UserId where 1=1 and {0}", sWhere);
DataTable dt = SqlHelper.ExecuteDataTable(com.Model.Base.DataBaseEnum.sq_ruanmou, sSql, CommandType.Text, para);
return dt.Rows.Count;
} /// <summary>
/// 获取到当前条件下的datatable
/// </summary>
/// <param name="pagesize">每页显示多少条数据</param>
/// <param name="pageindex">页码</param>
/// <param name="sWhere">条件语句</param>
/// <param name="listPm">cmd参数</param>
/// <returns></returns>
public static DataTable GetUserInnerAskDt(int pagesize, int pageindex, string sWhere, List<dbParam> listPm)
{
string sSql = string.Format(@"select top {0}*
42 from
43 (
44 select row_number() over(order by AskId) as rownumber,* from
45 (select UI.UserId,UI.UserName,UI.Phase,SA.AskId,SA.Title,SA.AskCategory
46 from UserInfor UI inner join StuAsk SA on
47 UI.UserId=SA.UserId) UISA where {2}
48 )A
49 where rownumber>({1}-1)*{0}", pagesize, pageindex, sWhere);
DataTable dt = SqlHelper.ExecuteDataTable(com.Model.Base.DataBaseEnum.sq_ruanmou, sSql, CommandType.Text, listPm);
return dt;
}
}
}
using com.DAL.Base;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Model.ruanmou;
using com.Utility;
using System.Web; namespace DAL.ruanmou
{
public class RNewsDal : System.Web.UI.Page
{
public static BaseDAL<RNews> m_RNewsDal = new BaseDAL<RNews>();
}
}
RNewsDal
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using com.Model.Base; namespace Model.ruanmou
{
public class RNews : BaseModel
{
public RNews()
{
PrimaryKey = "NewsId";
DataBaseName = DataBaseEnum.sq_ruanmou;
} public int NewsId { get; set; }
public string Title { get; set; }
public string Text { get; set; }
public DateTime CreatedTime { get; set; }
public string NewsClass { get; set; }
public int ViewCount { get; set; } }
}
RNews
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using com.Model.Base; namespace Model.ruanmou
{
public class StuAsk : BaseModel
{
public StuAsk()
{
PrimaryKey = "AskId";
DataBaseName = DataBaseEnum.sq_ruanmou;
} public int AskId { get; set; }
public string Title { get; set; }
public string Text { get; set; }
public int AskCategory { get; set; }//1表示前端,2表示数据库,3表示.net,4表示ps
public DateTime CreateTime { get; set; }
public int UserId { get; set; }
public string ClientIP { get; set; }
}
}
StuAsk
联合查询到gridview的更多相关文章
- SQL联合查询:子表任一记录与主表联合查询
今天有网友群里提了这样一个关于SQL联合查询的需求: 一.有热心网友的方案: 二.我的方案: select * from ( select a.*,(select top 1 Id from B as ...
- SQL 语句与性能之联合查询和联合分类查询
select * from t1 left join t2 on t2.sysno =t1.ASysNo left join t3 on t3.sysno =t2.ASysNo left join t ...
- myBatis中 collection 或 association 联合查询 中column 传入多个参数值
下面是一个树形结构表自连接 联合查询 Demo <resultMap id="BaseResultMap" type="com.maidan.daas.entit ...
- EF联合查询,如何设置条件过滤从表数据
最近在使用EF进行联合查询过程中,遇到了一件不开心的事情. 已禁用懒加载 var post = await _repository.GetMyPostById(blogId, postId).AsNo ...
- 【转】Mysql联合查询union和union all的使用介绍
Mysql的联合查询命令UNION和UNION ALL,总结了使用语法和注意事项,以及学习例子和项目例子,需要的朋友可以参考下 一.UNION和UNION ALL的作用和语法 UNION 用于合... ...
- SQL联合查询(内联、左联、右联、全联)的语法(转)
最近在做一个比较复杂的业务,涉及的表较多,于是在网上找了一些sql联合查询的例子进行研究使用. 概述: 联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer j ...
- MySQL数据库8 -子查询,联合查询
一 使用IN关键字的子查询 问题: 查询游戏类型是'棋牌类' 的游戏的分数信息 - 游戏分数表中并未包含游戏类型信息 思路一:采用链接查询 思路二: 分两步进行,首先找到所以'棋牌类'游戏的编号,再以 ...
- SQL联合查询(内联、左联、右联、全联)的语法
联合查询效率较高,举例子来说明联合查询:内联inner join .左联left outer join .右联right outer join .全联full outer join 的好处及用法. 联 ...
- SQL联合查询两个表的数据
刚有个项目,需要查询水位数据表中的水位信息,及查询降雨量表中统计时段降雨量的数据,以计算出日降雨量,而且时段是前一天8时到后一天8时总共24个小时. 两个子查询: 1.根据当前时间判断统计前天8时到今 ...
随机推荐
- android studio无法识别含有rcs包名的jar
http://blog.csdn.net/JingleYe/article/details/70048943 android studio无法识别含有rcs包名的jar android stu ...
- STM32小结
1.GPIO 电灯 推挽输出 PB5 2.GPIO 按键 浮空输入 PA0 3.写IO高电平 HAL_GPIO_WritePin(GPIOB,GPIO_Pin_5,1); 4.读取IO电平 HAL_G ...
- dedecms环境优化
路径:dedecms/dede/templates/index_body.htm <script type="text/javascript">function sho ...
- jsp中${}
jsp中${}----是EL表达式的常规表示方式目的是为了获取{}中指定的对象(参数.对象等)的值 如:${user.name}<====>User user = (User)reques ...
- Sencha Touch vs jQuery Mobile
Sencha Touch:重量级框架,类似于Flex SDK;组件封装较多;在各平台交互表现统一(内部封装);入门门槛较高 jQuery Mobile:轻量级框架,实质是jQuery插件;组件较少;交 ...
- 通过EXPLAIN分析低效SQL的执行计划
explain select * from film where rating>9\G; select_type 表示select的类型 SIMPLE 代表简单表,不用表连接或子查询 PRIMR ...
- 如何在同一台机器上安装多个MySQL的实例
转自:'http://www.cnblogs.com/shangzekai/p/4375271.html 最近由于工作的需要,需要在同一台机器上搭建两个MySQL的实例,(注:已经存在了一个3306的 ...
- php 在foreach中循环数组的时候添加元素的属性
foreach($arr as $k => &$v){ //注意,由于上面遍历的时候写了地址传值符&, //所以下面可以直接给$v 赋值;如果不写&符号,下面这样写是没有 ...
- android 弹起键盘把ui顶上去的解决办法
键盘输入框上面的ui布局必须为Relative相对布局.然后设置 <activityandroid:name=".activity.HomeActivity"Android: ...
- 面向对象_05【类的继承:extends、重写父类】
类的继承:现有类的基础上构建一个新的类,构建出来的类被称作子类,子类可继承父类的属性和方法. 什么时候定义继承?当类与类之间存在着所属关系的时候,就定义继承.xxx是yyy中的一种==>xxx ...