在SQL语法中,'引用..'是什么意思?

时间:2013-04-22 18:58:58

标签: sql sql-server-2008 syntax

from
[PMDB].[dbo].PROJECT P
inner join PROJWBS PW on P.proj_id = PW.proj_id
and PW.proj_node_flag = 'Y' and PW.wbs_short_name not like '%- B%'
and PW.status_code <> 'WS_Planned' and PW.status_code <> 'WS_Whatif'
inner join [PMDB].[dbo].TASKSUM TS on PW.proj_id = TS.proj_id and PW.wbs_id = TS.wbs_id
inner join reference..fiscal_year_qtr_month FYQM on isnull(TS.act_end_date,P.scd_end_date) > FYQM.fiscal_month_begin_datetime
and isnull(TS.act_end_date,P.scd_end_date) <= FYQM.fiscal_month_end_datetime
inner join reference..mfg_year_month_ww MYMW on isnull(TS.act_end_date,P.scd_end_date) > MYMW.mfg_ww_begin_datetime
a

我已经尝试过互联网,但只是不明白'参考..'在这里是什么意思。我错过了什么吗?

3 个答案:

答案 0 :(得分:6)

reference是数据库名称。在数据库名称和对象名称之间进行架构。

因此,如果您想从sys.database_files中的master进行查询,请说:

SELECT name FROM master.sys.database_files;
---- database ---^^^^^^
------------- schema ---^^^
----------------- object ---^^^^^^^^^^^^^^

如果您知道实体名称是明确的,则可以省略架构。对于目录视图/ DMV,您不能将其删除,但如果您使用的是默认模式(通常是dbo),则可以省略显式引用。 Not that that's a good idea

答案 1 :(得分:4)

reference..mfg_year_month_ww

的简写
reference.dbo.mfg_year_month_ww

基本上它意味着使用默认架构。

答案 2 :(得分:-1)

这是表示表名和所有者的T-SQL(特定于Microsoft)语法。默认所有者是“dbo”。默认数据库是您正在“使用”的任何一个。

以下是更多详情:

  

http://examplesql.com/sqlserver-t-sql-tsql/dbo-dotdot-syntax/

     

SELECT * FROM AdventureWorks2008.dbo.AWBuildVersion;

     

说实话,这不是火箭科学。 '..'可以用作   在引用tsql中的默认模式时替换dbo   查询。如果您需要频繁访问默认数据库,则dbo   ..语法快捷方式可以大大提高你的效率。