在tsql中,tablename(1)是什么意思
发布时间:2020-12-12 08:55:30 所属栏目:MsSql教程 来源:网络整理
导读:我正在尝试分析查询以提取逻辑,我看到几个使用语法SELECT FROM tableName(1)的select语句.以下是使用此语法的一些示例.这是一个相当大的插入语句,因此我无法发布整个查询. select nh.firm_code,nh.acct_num,nh.sub_code,b.amtfrom nav_hist nh(1),breakpoints
我正在尝试分析查询以提取逻辑,我看到几个使用语法SELECT FROM tableName(1)的select语句.以下是使用此语法的一些示例.这是一个相当大的插入语句,因此我无法发布整个查询.
select nh.firm_code,nh.acct_num,nh.sub_code,b.amt from nav_hist nh(1),breakpoints b where nh.sales_load_id = b.schedule_id select sum(weekdays.factor) from calc_hist weekdays(1) where weekdays.sys_date >= dateadd(dd,f.usr_num_days - 7,f.sys_date) and weekdays.sys_date < f.sys_date and c.firm_code = weekdays.firm_code 有谁知道(1)在from语句中的意思? 解决方法我已经做了一些挖掘,我认为这里发生的事情是你实际上正在使用查询提示,即'(1)’.这是一个INDEX查询提示,您可以阅读有关这些 here的更多信息.根据使用此格式而没有特定于WITH的文档已弃用,我不能在2008年执行此操作,但可能您使用的是其他特定版本或使用某种影响此功能的兼容模式. 如果您可以为包含这些语法的查询提供更多资源,我将能够继续挖掘. 这是我在服务器上运行时得到的结果: select * from sysobjects WITH (1) --Warning: Index hints supplied for view 'sysobjects' will be ignored. 编辑 SELECT 1 FROM TABLENAME(1) 等于 SELECT 1 FROM TABLENAME WITH (1) 然后下面证明了这一点,当指定一个大于表中可用索引数的整数时将导致异常.看一看: --Table sysjobs has 4 indexes select * from msdb..sysjobs with (4) --1 row affected select * from msdb..sysjobs with (5) --Msg 307,Level 16,State 1,Line 2 --Index ID 5 on table 'msdb..sysjobs' (specified in the FROM clause) does not exist. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |