Foxtable(狐表)用户栏目专家坐堂 → 多表联合查询的分页问题SQLTABLE SQLLOAD


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

主题:多表联合查询的分页问题SQLTABLE SQLLOAD

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


加好友 发短信
等级:童狐 帖子:274 积分:3148 威望:0 精华:0 注册:2017/10/15 20:04:00
多表联合查询的分页问题SQLTABLE SQLLOAD  发帖心情 Post By:2018/8/27 17:38:00 [只看该作者]

Select * F rom (Select Row_Number() Over(Order by [订单ID]) As RowNum, * f rom 订单) As a Where RowNum >= 1 And RowNum <= 50

这行是示例

我现在需要查询两个表

一个是tbl_商品 另一个是tbl_品牌表

靠tbl_商品.品牌=tbl_品牌表.品牌名称 联合

请问以上SQL 代码要怎么套用?


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/27 17:40:00 [只看该作者]

1、首先得到联合查询的sql语句,比如为 sql1;

 

2、把sql1替换示例语句的【订单】即可,如

 

Select * F rom (Select Row_Number() Over(Order by [订单ID]) As RowNum, * f rom (sql1)) As a Where RowNum >= 1 And RowNum <= 50


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


加好友 发短信
等级:童狐 帖子:274 积分:3148 威望:0 精华:0 注册:2017/10/15 20:04:00
  发帖心情 Post By:2018/8/27 19:06:00 [只看该作者]

好像不行 我把SELECT 语句 直接写在了SQL1那里 显示不行

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


加好友 发短信
等级:童狐 帖子:274 积分:3148 威望:0 精华:0 注册:2017/10/15 20:04:00
  发帖心情 Post By:2018/8/27 20:43:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:1535373725(1).jpg
图片点击可在新窗口打开查看 我这样写 还是不行 特意没有多表查询

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


加好友 发短信
等级:童狐 帖子:274 积分:3148 威望:0 精华:0 注册:2017/10/15 20:04:00
  发帖心情 Post By:2018/8/27 20:45:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:1535373857(1).jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/27 21:38:00 [只看该作者]

Select * F rom (Select Row_Number() Over(Order by [订单ID]) As RowNum, * f rom (sql1) as a) As a Where RowNum >= 1 And RowNum <= 50

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


加好友 发短信
等级:童狐 帖子:274 积分:3148 威望:0 精华:0 注册:2017/10/15 20:04:00
  发帖心情 Post By:2018/8/27 23:06:00 [只看该作者]

Select * F rom (Select Row_Number() Over(Order by [登记名称]) As RowNum, * f rom (SELECT [tbl_商品]._identify [tbl_商品].品牌,登记名称 f rom  [tbl_商品])as a) As a Where RowNum >= 1 And RowNum <= 40
这句故意不联合表查询 如果写有字段名 依然会报错
如果是像以下这样,倒是不会报错,可一旦两个表 就会出错 提示有两个_identify列
Select * F rom (Select Row_Number() Over(Order by [登记名称]) As RowNum, * f rom (SELECT * f rom  [tbl_商品])as a) As a Where RowNum >= 1 And RowNum <= 40

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/27 23:15:00 [只看该作者]

Select * F rom (Select Row_Number() Over(Order by [登记名称]) As RowNum, * f rom (SELECT [tbl_商品].[_identify], [tbl_商品].品牌,登记名称 f rom  [tbl_商品])as a) As a Where RowNum >= 1 And RowNum <= 40
[此贴子已经被作者于2018/8/27 23:14:54编辑过]

 回到顶部