Foxtable(狐表)用户栏目专家坐堂 → sql语句的问题


  共有3981人关注过本帖树形打印复制链接

主题:sql语句的问题

帅哥哟,离线,有人找我吗?
有点蓝
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106017 积分:539172 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/2 14:06:00 [只看该作者]

http://jingyan.baidu.com/article/72ee561abbf22de16138dfa4.html

 回到顶部
帅哥哟,离线,有人找我吗?
ap9709130
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1467 积分:11418 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2016/9/2 14:24:00 [只看该作者]

有点蓝老师,

 

可以用代码做这个的吗?有没有什么资料?多谢!


 回到顶部
帅哥哟,离线,有人找我吗?
ap9709130
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1467 积分:11418 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2016/9/2 14:37:00 [只看该作者]

还有一个问题想请教的,我现在想了想可能是这个数量库的数量太多了,超过了IN 的运算量所以,会出错,以后数据不够多。所以没有发生错误,因为我的水平有限,系统里用了好多IN 的用法,现在想慢慢的改回来,请教下如果是下面这种SQL要怎么改会比较好?

 

FilterVal = "订单编号 in (s el ect [_Identify] from {销售订单主表} where 订单类型 = '" & lx & "' And 送货日期 >= '" & dt1 & "' and 送货日期 <= '" & dt2 & "' and 所属公司 = '" & gs & "') “

 

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
ap9709130
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1467 积分:11418 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2016/9/2 15:29:00 [只看该作者]

有人能教一下吗?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106017 积分:539172 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/2 15:31:00 [只看该作者]

这个地方没有优化的余地。只能是自己写sql进行分页


 回到顶部
帅哥哟,离线,有人找我吗?
ap9709130
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1467 积分:11418 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2016/9/2 16:02:00 [只看该作者]

有点蓝老师,

 

有SQL进行分页的资料吗?


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/9/2 16:13:00 [只看该作者]

SQL语句分页加载,帮助有个例子:

http://www.foxtable.com/webhelp/scr/2721.htm

 

in的值太多的话,不管怎么写,都会影响速度


 回到顶部
帅哥哟,离线,有人找我吗?
ap9709130
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1467 积分:11418 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2016/9/2 17:08:00 [只看该作者]

但是在做一些权限系统时,我的水平有限,我基本上都是用IN 来配合使用的。比如给业务员看见自己的订单,生成的表的SQL为以下:

 

s elect * form {订单明细} where 客户名称 in (s elect [客户名称] from {客户表} where 业务员 = ‘王一)

 

如果王一的客户量很多,比如30万个,我估计就挂了。但这种SQL 要怎么才能不用IN 来实现啊?


 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/9/2 17:14:00 [只看该作者]

那就在订单明细加一列“业务员”吧


 回到顶部
帅哥哟,离线,有人找我吗?
ap9709130
  20楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1467 积分:11418 威望:0 精华:0 注册:2013/11/24 22:10:00
  发帖心情 Post By:2016/9/2 17:48:00 [只看该作者]

狐爸,这不是好的办法吧,如果是再复杂的权限,比较产品,产品分类,那不是要加上很多列,但这些列都是数据重复的。应该还有好办法吧?

 回到顶部
总数 27 上一页 1 2 3 下一页