sb.Append("select top " + pageNum + " * from Job ");
sb.Append(" where ID Not in( select top " +pageNum*currentPage+ " ID from Job )");经过验证 这个SQL语句的写法是不对的请高手指点
给出正确的写法!
sb.Append(" where ID Not in( select top " +pageNum*currentPage+ " ID from Job )");经过验证 这个SQL语句的写法是不对的请高手指点
给出正确的写法!
解决方案 »
- (急)在windows2008 安装iis7 搭建好网站后 发现只要一台机子登录后,其他的机子都一样了!在线等 高手快快来吧
- 菜鸟求帮助!mvc2的论坛系统教程
- 求一个sql语句
- 有没有类似 #include 的命令呀.????????
- 如何编辑datagrid的列标头模板?
- 获取重新定向的计数
- 严重请教 PowerDesigner 里如何设置可以让一个主键自动递增?
- 菜鸟提问!水晶报表初体验,出了奇怪问题,请各位高手帮帮忙啊!!
- 请问一下GOOGLE多长时间更新数据库???
- 如何判断打开页面的html元素是否存在?
- 在线等! 三层架构 SQL 转 Access后出现的问题!
- listView问题
要想看对不对,直接把拼接好的SQL语句放到查询分析器里面运行下就知道,或者把数据库跟踪打开看下
sb.Append("select top ").Append(pageNum).Append(" * from Job ");
sb.Append(" where ID Not in( select top ").Append(pageNum*currentPage).Append(" ID from Job)");
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Text;
public partial class jss_Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder(); int pageNum = 1; int currentPage = 5; sb.Append("select top " + pageNum + " * from Job ");
sb.Append(" where ID Not in( select top " + pageNum * currentPage + " ID from Job )"); Response.Write(sb.ToString()); //select top 1 * from Job where ID Not in( select top 5 ID from Job ) //后面的ID号不止一个,所以要报错,除非处理一下,先将select top 5 ID from Job 的ID号
//处理成字符串格式,比如'001','002','003',这样才可以查询。
}
}
sb.Append(" where ID Not in( select top").Append(pageNum*currentPage).Append(" ID from Job)"); 5楼没有考虑嵌套查询内句查询出来为空,如果not in(条件)
如果条件为空或查询的是:(top 0)
则查询出来就不正确
access应该改成如下,access是要求很严格的int a=int.Parse(pageNum);
int b=int.Parse(pageNum*currentPage);sb.Append("select top "+ a +" * from Job ");
sb.Append(" where ID Not in( select top "+ b +" ID from Job )");
int b=int.Parse(pageNum*currentPage); sb.Append("select top ");
sb.Append(a);
sb.Append(" * from Job ");
sb.Append(" where ID Not in( select top ");
sb.Append(b)
sb.Append(" ID from Job )");
int b=int.Parse(pageNum*currentPage); sb.Append("select top ");
sb.Append(a);
sb.Append(" * from Job ");
sb.Append(" where ID Not in( select top ");
sb.Append(b)
sb.Append(" ID from Job )");
sb.Append("select top " + pageNum + " * from Job ");
sb.Append(" where ID Not in( select top " +pageNum*currentPage+ " ID from Job ) tbjob");
正如 这个大哥说的
估计这个写法是 错误的不过 我换了个写法 int sum = Get_JobNum();
int number = sum - pageNum * currentPage;
sb.Append("SELECT TOP " + pageNum + " * FROM (SELECT TOP " + number + " * FROM [Job] ORDER BY ID DESC) ORDER BY ID ASC");呵呵
谢谢各位的回复
分大家分了咯~ 也不多
再次感谢