esen 发表于 2011-05-18 11:01

求救:查询一直在等待

系统执行一个查询时,一直在等待,不做事,没有锁,事物也一直在执行,但n个小时还能出来结果,执行sp_who查看,显示如下相关信息
265          26        sync sleep        mjk        mjk                     0        apparel        tempdb        WORKER PROCESS                0
265          45        sync sleep        mjk        mjk                     0        apparel        tempdb        WORKER PROCESS                0
265          58        sync sleep        mjk        mjk                     0        apparel        tempdb        WORKER PROCESS                0
265          84        sync sleep        mjk        mjk                     0        apparel        tempdb        WORKER PROCESS                0
。。。。。
265       211        sync sleep        mjk        mjk                     0        apparel        tempdb        WORKER PROCESS                0
265       246        sync sleep        mjk        mjk                     0        apparel        tempdb        WORKER PROCESS                0
265       265        running        mjk        mjk                     0        apparel        tempdb        SELECT                0
265       290        sync sleep        mjk        mjk                     0        apparel        tempdb        WORKER PROCESS                0
。。。。。
265       506        sync sleep        mjk        mjk                     0        apparel        tempdb        WORKER PROCESS                0

该查询的执行计划如下:
QUERY PLAN FOR STATEMENT 1 (at line 1).


    STEP 1
      The type of query is EXECUTE.
      Executing a previously cached statement (SSQL_ID = 285992175).


QUERY PLAN FOR STATEMENT 1 (at line 1).
    Executed in parallel by coordinating process and 32 worker processes.

Auxiliary scan descriptors required: 31


    STEP 1
      The type of query is SELECT.

        109 operator(s) under root

       |ROOT:EMIT Operator (VA = 109)
       |
       |   |SEQUENCER Operator (VA = 108) has 7 children.
       |   |
       |   |   |STORE Operator (VA = 3)
       |   |   |Worktable1 created, in allpages locking mode, for REFORMATTING.
       |   |   |Creating clustered index.
       |   |   |
       |   |   |   |INSERT Operator (VA = 2)
       |   |   |   |The update mode is direct.
       |   |   |   |
       |   |   |   |   |RESTRICT Operator (VA = 1)(0)(0)(0)(15)(0)
       |   |   |   |   |
       |   |   |   |   |   |SCAN Operator (VA = 0)
       |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |currbolt
       |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |
       |   |   |   |TO TABLE
       |   |   |   |Worktable1.
       |   |
       |   |   |STORE Operator (VA = 6)
       |   |   |Worktable2 created, in allpages locking mode, for REFORMATTING.
       |   |   |Creating clustered index.
       |   |   |
       |   |   |   |INSERT Operator (VA = 5)
       |   |   |   |The update mode is direct.
       |   |   |   |
       |   |   |   |   |SCAN Operator (VA = 4)
       |   |   |   |   |FROM TABLE
       |   |   |   |   |stock_list
       |   |   |   |   |Table Scan.
       |   |   |   |   |Forward Scan.
       |   |   |   |   |Positioning at start of table.
       |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |
       |   |   |   |TO TABLE
       |   |   |   |Worktable2.
       |   |
       |   |   |STORE Operator (VA = 10)
       |   |   |Worktable3 created, in allpages locking mode, for REFORMATTING.
       |   |   |Creating clustered index.
       |   |   |
       |   |   |   |INSERT Operator (VA = 9)
       |   |   |   |The update mode is direct.
       |   |   |   |
       |   |   |   |   |RESTRICT Operator (VA = 8)(0)(0)(0)(6)(0)
       |   |   |   |   |
       |   |   |   |   |   |SCAN Operator (VA = 7)
       |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |item_master
       |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |
       |   |   |   |TO TABLE
       |   |   |   |Worktable3.
       |   |
       |   |   |STORE Operator (VA = 14)
       |   |   |Worktable4 created, in allpages locking mode, for REFORMATTING.
       |   |   |Creating clustered index.
       |   |   |
       |   |   |   |INSERT Operator (VA = 13)
       |   |   |   |The update mode is direct.
       |   |   |   |
       |   |   |   |   |RESTRICT Operator (VA = 12)(0)(0)(0)(15)(0)
       |   |   |   |   |
       |   |   |   |   |   |SCAN Operator (VA = 11)
       |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |currbolt
       |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |
       |   |   |   |TO TABLE
       |   |   |   |Worktable4.
       |   |
       |   |   |STORE Operator (VA = 18)
       |   |   |Worktable5 created, in allpages locking mode, for REFORMATTING.
       |   |   |Creating clustered index.
       |   |   |
       |   |   |   |INSERT Operator (VA = 17)
       |   |   |   |The update mode is direct.
       |   |   |   |
       |   |   |   |   |RESTRICT Operator (VA = 16)(0)(0)(0)(5)(0)
       |   |   |   |   |
       |   |   |   |   |   |SCAN Operator (VA = 15)
       |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |wiseform..customer
       |   |   |   |   |   |b
       |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |
       |   |   |   |TO TABLE
       |   |   |   |Worktable5.
       |   |
   

请各位大侠帮忙看看,问题出在哪儿?

esen 发表于 2011-05-18 11:02

接上面
|   |   |STORE Operator (VA = 22)
       |   |   |Worktable6 created, in allpages locking mode, for REFORMATTING.
       |   |   |Creating clustered index.
       |   |   |
       |   |   |   |INSERT Operator (VA = 21)
       |   |   |   |The update mode is direct.
       |   |   |   |
       |   |   |   |   |RESTRICT Operator (VA = 20)(0)(0)(0)(15)(0)
       |   |   |   |   |
       |   |   |   |   |   |SCAN Operator (VA = 19)
       |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |inbill
       |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |
       |   |   |   |TO TABLE
       |   |   |   |Worktable6.
       |   |
       |   |   |HASH UNION Operator (VA = 107)has 4 children.
       |   |   | Using Worktable27 for internal storage.
       |   |   |Key Count: 39
       |   |   |
       |   |   |   |RESTRICT Operator (VA = 49)(0)(2)(0)(0)(3)
       |   |   |   |
       |   |   |   |   |MERGE JOIN Operator (Join Type: Inner Join) (VA = 48)
       |   |   |   |   | Using Worktable16 for internal storage.
       |   |   |   |   |Key Count: 3
       |   |   |   |   |Key Ordering: ASC ASC ASC
       |   |   |   |   |
       |   |   |   |   |   |SORT Operator (VA = 45)
       |   |   |   |   |   | Average Row width is 582.631836
       |   |   |   |   |   | Using Worktable15 for internal storage.
       |   |   |   |   |   |
       |   |   |   |   |   |   |MERGE JOIN Operator (Join Type: Left Outer Join) (VA = 44)
       |   |   |   |   |   |   | Using Worktable14 for internal storage.
       |   |   |   |   |   |   |Key Count: 1
       |   |   |   |   |   |   |Key Ordering: ASC
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |SORT Operator (VA = 42)
       |   |   |   |   |   |   |   | Average Row width is 576.631836
       |   |   |   |   |   |   |   | Using Worktable13 for internal storage.
       |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |NESTED LOOP JOIN Operator (VA = 41) (Join Type: Left Outer Join)
       |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |MERGE JOIN Operator (Join Type: Inner Join) (VA = 39)
       |   |   |   |   |   |   |   |   |   | Using Worktable12 for internal storage.
       |   |   |   |   |   |   |   |   |   |Key Count: 5
       |   |   |   |   |   |   |   |   |   |Key Ordering: ASC ASC ASC ASC ASC
       |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |SORT Operator (VA = 33)
       |   |   |   |   |   |   |   |   |   |   | Average Row width is 206.123230
       |   |   |   |   |   |   |   |   |   |   | Using Worktable10 for internal storage.
       |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |N-ARY NESTED LOOP JOIN Operator (VA = 32) has 3 children.
       |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |MERGE JOIN Operator (Join Type: Inner Join) (VA = 28)
       |   |   |   |   |   |   |   |   |   |   |   |   | Using Worktable9 for internal storage.
       |   |   |   |   |   |   |   |   |   |   |   |   |Key Count: 1
       |   |   |   |   |   |   |   |   |   |   |   |   |Key Ordering: ASC
       |   |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |   |SORT Operator (VA = 24)
       |   |   |   |   |   |   |   |   |   |   |   |   |   | Average Row width is 57.338165
       |   |   |   |   |   |   |   |   |   |   |   |   |   | Using Worktable7 for internal storage.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 23)
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |item_categ
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |   |SORT Operator (VA = 27)
       |   |   |   |   |   |   |   |   |   |   |   |   |   | Average Row width is 87.033051
       |   |   |   |   |   |   |   |   |   |   |   |   |   | Using Worktable8 for internal storage.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |RESTRICT Operator (VA = 26)(0)(0)(0)(6)(0)
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 25)
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |item_master
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 29)
       |   |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |   |Worktable1.
       |   |   |   |   |   |   |   |   |   |   |   |   |Using Clustered Index.
       |   |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |RESTRICT Operator (VA = 31)(3)(0)(0)(0)(0)
       |   |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 30)
       |   |   |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |   |   |Worktable2.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |Using Clustered Index.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |SORT Operator (VA = 38)
       |   |   |   |   |   |   |   |   |   |   | Average Row width is 130.508636
       |   |   |   |   |   |   |   |   |   |   | Using Worktable11 for internal storage.
       |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |EXCHANGE Operator (VA = 37) (Merged)
       |   |   |   |   |   |   |   |   |   |   |   |Executed in parallel by 32 Producer and 1 Consumer processes.

       |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |EXCHANGE:EMIT Operator (VA = 36)
       |   |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |   |RESTRICT Operator (VA = 35)(0)(0)(0)(15)(0)
       |   |   |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 34)
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |inbill
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Executed in parallel with a 32-way hash scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 40)
       |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |purchase_order
       |   |   |   |   |   |   |   |   |   |Index : purchase_order_x1
       |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |   |   |   |    po_number ASC
       |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |SCAN Operator (VA = 43)
       |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |buyer
       |   |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |
       |   |   |   |   |   |RESTRICT Operator (VA = 47)(0)(0)(0)(5)(0)
       |   |   |   |   |   |
       |   |   |   |   |   |   |SCAN Operator (VA = 46)
       |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |customer
       |   |   |   |   |   |   |Index : customer_x
       |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |Positioning at index start.
       |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |
       |   |   |   |RESTRICT Operator (VA = 66)(0)(2)(0)(0)(3)
       |   |   |   |
       |   |   |   |   |NESTED LOOP JOIN Operator (VA = 65) (Join Type: Inner Join)
       |   |   |   |   |
       |   |   |   |   |   |NESTED LOOP JOIN Operator (VA = 63) (Join Type: Left Outer Join)
       |   |   |   |   |   |
       |   |   |   |   |   |   |SQFILTER Operator (VA = 61) has 2 children.
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |NESTED LOOP JOIN Operator (VA = 57) (Join Type: Left Outer Join)
       |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |N-ARY NESTED LOOP JOIN Operator (VA = 55) has 4 children.
       |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 50)
       |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |item_categ
       |   |   |   |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 51)
       |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |Worktable3.
       |   |   |   |   |   |   |   |   |   |Using Clustered Index.
       |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 52)
       |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |Worktable4.
       |   |   |   |   |   |   |   |   |   |Using Clustered Index.
       |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |RESTRICT Operator (VA = 54)(0)(0)(0)(1)(0)
       |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 53)
       |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |inbill
       |   |   |   |   |   |   |   |   |   |   |Index : inbill_copy_x
       |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |   |   |   |   |    in_no ASC
       |   |   |   |   |   |   |   |   |   |   |    item_code ASC
       |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |SCAN Operator (VA = 56)
       |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |purchase_order
       |   |   |   |   |   |   |   |   |Index : purchase_order_x1
       |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |   |   |    po_number ASC
       |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |Run subquery 1 (at nesting level 1).
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |QUERY PLAN FOR SUBQUERY 1 (at nesting level 1 and at line 1).
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |   Correlated Subquery.
       |   |   |   |   |   |   |   Subquery under an EXISTS predicate.
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |SCALAR AGGREGATE Operator (VA = 60)
       |   |   |   |   |   |   |   |Evaluate Ungrouped ANY AGGREGATE.
       |   |   |   |   |   |   |   |Scanning only up to the first qualifying row.
       |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |RESTRICT Operator (VA = 59)(3)(0)(0)(0)(0)
       |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 58)
       |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |stock_list
       |   |   |   |   |   |   |   |   |   |Index : pk_stock_list
       |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |Positioning at index start.
       |   |   |   |   |   |   |   |   |   |Index contains all needed columns. Base table will not be read.
       |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |END OF QUERY PLAN FOR SUBQUERY 1.
       |   |   |   |   |   |

esen 发表于 2011-05-18 11:03

接上面
|   |   |   |   |   |   |SCAN Operator (VA = 62)
       |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |buyer
       |   |   |   |   |   |   |Using Clustered Index.
       |   |   |   |   |   |   |Index : buyer_19833981851
       |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |    buyer_name ASC
       |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |
       |   |   |   |   |   |SCAN Operator (VA = 64)
       |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |customer
       |   |   |   |   |   |Index : customer_x
       |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |Keys are:
       |   |   |   |   |   |    sal_no ASC
       |   |   |   |   |   |    cust_no ASC
       |   |   |   |   |   |    trade_no ASC
       |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |
       |   |   |   |RESTRICT Operator (VA = 85)(0)(2)(0)(0)(5)
       |   |   |   |
       |   |   |   |   |MERGE JOIN Operator (Join Type: Inner Join) (VA = 84)
       |   |   |   |   | Using Worktable21 for internal storage.
       |   |   |   |   |Key Count: 1
       |   |   |   |   |Key Ordering: ASC
       |   |   |   |   |
       |   |   |   |   |   |NESTED LOOP JOIN Operator (VA = 81) (Join Type: Inner Join)
       |   |   |   |   |   |
       |   |   |   |   |   |   |SORT Operator (VA = 79)
       |   |   |   |   |   |   | Average Row width is 547.985596
       |   |   |   |   |   |   | Using Worktable19 for internal storage.
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |MERGE JOIN Operator (Join Type: Left Outer Join) (VA = 78)
       |   |   |   |   |   |   |   | Using Worktable18 for internal storage.
       |   |   |   |   |   |   |   |Key Count: 1
       |   |   |   |   |   |   |   |Key Ordering: ASC
       |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |SORT Operator (VA = 76)
       |   |   |   |   |   |   |   |   | Average Row width is 541.985596
       |   |   |   |   |   |   |   |   | Using Worktable17 for internal storage.
       |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |NESTED LOOP JOIN Operator (VA = 75) (Join Type: Left Outer Join)
       |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |N-ARY NESTED LOOP JOIN Operator (VA = 73) has 4 children.
       |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 67)
       |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |wiseform..stock_list
       |   |   |   |   |   |   |   |   |   |   |   |f
       |   |   |   |   |   |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |RESTRICT Operator (VA = 69)(0)(0)(0)(15)(0)
       |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 68)
       |   |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |   |currbolt
       |   |   |   |   |   |   |   |   |   |   |   |   |Index : ddd
       |   |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |   |   |   |   |   |   |    bolt_pcno ASC
       |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 70)
       |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |wiseform..item_master
       |   |   |   |   |   |   |   |   |   |   |   |c
       |   |   |   |   |   |   |   |   |   |   |   |Index : item_master_copy_x
       |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |   |   |   |   |   |    item_code ASC
       |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |RESTRICT Operator (VA = 72)(0)(0)(0)(1)(0)
       |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 71)
       |   |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |   |inbill
       |   |   |   |   |   |   |   |   |   |   |   |   |Index : inbill_copy_x
       |   |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |   |   |   |   |   |   |    in_no ASC
       |   |   |   |   |   |   |   |   |   |   |   |   |    item_code ASC
       |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 74)
       |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |wiseform..purchase_order
       |   |   |   |   |   |   |   |   |   |   |d
       |   |   |   |   |   |   |   |   |   |   |Index : abc
       |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |   |   |   |   |    po_number ASC
       |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |SCAN Operator (VA = 77)
       |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |wiseform..buyer
       |   |   |   |   |   |   |   |   |g
       |   |   |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |
       |   |   |   |   |   |   |SCAN Operator (VA = 80)
       |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |wiseform..customer
       |   |   |   |   |   |   |b
       |   |   |   |   |   |   |Using Clustered Index.
       |   |   |   |   |   |   |Index : customer_19513980711
       |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |    sal_no ASC
       |   |   |   |   |   |   |    cust_no ASC
       |   |   |   |   |   |   |    trade_no ASC
       |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |
       |   |   |   |   |   |SORT Operator (VA = 83)
       |   |   |   |   |   | Average Row width is 58.593216
       |   |   |   |   |   | Using Worktable20 for internal storage.
       |   |   |   |   |   |
       |   |   |   |   |   |   |SCAN Operator (VA = 82)
       |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |wiseform..item_categ
       |   |   |   |   |   |   |e
       |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |
       |   |   |   |RESTRICT Operator (VA = 106)(0)(2)(0)(0)(3)
       |   |   |   |
       |   |   |   |   |SQFILTER Operator (VA = 105) has 2 children.
       |   |   |   |   |
       |   |   |   |   |   |MERGE JOIN Operator (Join Type: Left Outer Join) (VA = 101)
       |   |   |   |   |   | Using Worktable26 for internal storage.
       |   |   |   |   |   |Key Count: 1
       |   |   |   |   |   |Key Ordering: ASC
       |   |   |   |   |   |
       |   |   |   |   |   |   |SORT Operator (VA = 99)
       |   |   |   |   |   |   | Average Row width is 648.469971
       |   |   |   |   |   |   | Using Worktable25 for internal storage.
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |NESTED LOOP JOIN Operator (VA = 98) (Join Type: Left Outer Join)
       |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |NESTED LOOP JOIN Operator (VA = 96) (Join Type: Inner Join)
       |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |MERGE JOIN Operator (Join Type: Inner Join) (VA = 94)
       |   |   |   |   |   |   |   |   |   | Using Worktable24 for internal storage.
       |   |   |   |   |   |   |   |   |   |Key Count: 1
       |   |   |   |   |   |   |   |   |   |Key Ordering: ASC
       |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |N-ARY NESTED LOOP JOIN Operator (VA = 90) has 3 children.
       |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |SORT Operator (VA = 87)
       |   |   |   |   |   |   |   |   |   |   |   | Average Row width is 58.593216
       |   |   |   |   |   |   |   |   |   |   |   | Using Worktable22 for internal storage.
       |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 86)
       |   |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |   |wiseform..item_categ
       |   |   |   |   |   |   |   |   |   |   |   |   |e
       |   |   |   |   |   |   |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 88)
       |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |Worktable5.
       |   |   |   |   |   |   |   |   |   |   |   |Using Clustered Index.
       |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 89)
       |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |Worktable6.
       |   |   |   |   |   |   |   |   |   |   |   |Using Clustered Index.
       |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |SORT Operator (VA = 93)
       |   |   |   |   |   |   |   |   |   |   | Average Row width is 90.925186
       |   |   |   |   |   |   |   |   |   |   | Using Worktable23 for internal storage.
       |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |RESTRICT Operator (VA = 92)(0)(0)(0)(6)(0)
       |   |   |   |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 91)
       |   |   |   |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |   |   |   |wiseform..item_master
       |   |   |   |   |   |   |   |   |   |   |   |   |c
       |   |   |   |   |   |   |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |   |SCAN Operator (VA = 95)
       |   |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |   |currbolt
       |   |   |   |   |   |   |   |   |   |Index : hhhh
       |   |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |   |   |   |    in_no ASC
       |   |   |   |   |   |   |   |   |   |    item_code ASC
       |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |   |SCAN Operator (VA = 97)
       |   |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |   |wiseform..purchase_order
       |   |   |   |   |   |   |   |   |d
       |   |   |   |   |   |   |   |   |Index : abc
       |   |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |   |Positioning by key.
       |   |   |   |   |   |   |   |   |Keys are:
       |   |   |   |   |   |   |   |   |    po_number ASC
       |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |   |
       |   |   |   |   |   |   |SCAN Operator (VA = 100)
       |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |wiseform..buyer
       |   |   |   |   |   |   |g
       |   |   |   |   |   |   |Table Scan.
       |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |Positioning at start of table.
       |   |   |   |   |   |   |Using I/O Size 2 Kbytes for data pages.
       |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for data pages.
       |   |   |   |   |
       |   |   |   |   |Run subquery 1 (at nesting level 1).
       |   |   |   |   |
       |   |   |   |   |QUERY PLAN FOR SUBQUERY 1 (at nesting level 1 and at line 1).
       |   |   |   |   |
       |   |   |   |   |   Correlated Subquery.
       |   |   |   |   |   Subquery under an EXISTS predicate.
       |   |   |   |   |
       |   |   |   |   |   |SCALAR AGGREGATE Operator (VA = 104)
       |   |   |   |   |   |Evaluate Ungrouped ANY AGGREGATE.
       |   |   |   |   |   |Scanning only up to the first qualifying row.
       |   |   |   |   |   |
       |   |   |   |   |   |   |RESTRICT Operator (VA = 103)(3)(0)(0)(0)(0)
       |   |   |   |   |   |   |
       |   |   |   |   |   |   |   |SCAN Operator (VA = 102)
       |   |   |   |   |   |   |   |FROM TABLE
       |   |   |   |   |   |   |   |wiseform..stock_list
       |   |   |   |   |   |   |   |f
       |   |   |   |   |   |   |   |Index : pk_stock_list
       |   |   |   |   |   |   |   |Forward Scan.
       |   |   |   |   |   |   |   |Positioning at index start.
       |   |   |   |   |   |   |   |Index contains all needed columns. Base table will not be read.
       |   |   |   |   |   |   |   |Using I/O Size 2 Kbytes for index leaf pages.
       |   |   |   |   |   |   |   |With LRU Buffer Replacement Strategy for index leaf pages.
       |   |   |   |   |
       |   |   |   |   |END OF QUERY PLAN FOR SUBQUERY 1.

有点长,请大侠帮忙耐心看看

andkylee 发表于 2011-05-18 12:41

用sp_sysmon监控,看看系统的状态。

chuxu 发表于 2011-05-18 13:32

你的查询语句也太复杂了吧,而且从这个查询计划中已经看到了几处table scan,如果表比较大,慢也是正常的了。

esen 发表于 2011-05-18 13:45

在客户端,我执行同样的sql,却只需要40-50秒就可以出来数据,升级到15才这样的,sql如下:
SELECT viewbolt.in_no,   
                        viewbolt.item_code,   
                        viewbolt.bolt_pcno,   
                        viewbolt.color_no,   
                        viewbolt.lot_no,   
                        viewbolt.bolt_no,   
                        viewbolt.area_no,   
                        viewbolt.scalar_qty,   
                        viewbolt.curr_qty,   
                        viewbolt.in_date,   
                        viewbolt.loc_number,   
                        viewbolt.categ_type,   
                        viewbolt.po_number,   
                        viewbolt.sale_no,   
                        viewbolt.cust_no,   
                        viewbolt.trade_no,   
                        viewbolt.rpt_no,   
                        viewbolt.re_value_price,   
                        viewbolt.unit_price,
                        item_master.wei_ave_price,
                        viewbolt.ys_name ,
                        item_master.item_uom,
                        customer.sal_name,
                        customer.cust_name,
                        item_master.item_desc,
                        item_master.item_sub_categ_code,
                        item_categ.item_sub_categ_desc,   
                        customer.trademark_name,
                        purchase_order.order_date,
                        purchase_order.remarks,
                        viewbolt.first_in_date,
                        datepart(day,viewbolt.first_in_date) as first_in_day,
                        datepart(month,viewbolt.first_in_date) as first_in_month,
                        datepart(year,viewbolt.first_in_date) as first_in_year,
                        ceiling(convert(dec(6,2),datediff(day,viewbolt.first_in_date,getdate()))/30) as aging_categ,
                        stock_list.status,
                        stock_list.remark,
         buyer.buyer_name_ch,purchase_order.buyer
FROM viewbolt,customer,item_master,purchase_order,item_categ,stock_list,buyer
WHERE viewbolt.sale_no = customer.sal_noand
                        viewbolt.cust_no = customer.cust_no and
                        viewbolt.trade_no= customer.trade_no and
                        viewbolt.item_code = item_master.item_code and
                        item_master.item_sub_categ_code = item_categ.item_sub_categ_code and
                        viewbolt.po_number *= purchase_order.po_number and
                        viewbolt.bolt_pcno = stock_list.bolt_pcno and
                        purchase_order.buyer *= buyer.buyer_name and
                        (( viewbolt.in_no >= '%' ) AND
                        ( viewbolt.in_no <= '%' ) or
                        (viewbolt.in_no like '%' and '%'='%' )) and
                        ( viewbolt.item_code like '%' ) AND
                        ( viewbolt.loc_number like '%' ) AND
                        ( viewbolt.categ_type like '%' ) and
                        viewbolt.out_no='' and viewbolt.dispart <>'T' and
                        viewbolt.sale_no like '%'   and
                        viewbolt.cust_no like '%'   and
                        viewbolt.trade_no like '%'
       
UNION

SELECT viewbolt.in_no,   
                        viewbolt.item_code,   
                        viewbolt.bolt_pcno,   
                        viewbolt.color_no,   
                        viewbolt.lot_no,   
                        viewbolt.bolt_no,   
                        viewbolt.area_no,   
                        viewbolt.scalar_qty,   
                        viewbolt.curr_qty,   
                        viewbolt.in_date,   
                        viewbolt.loc_number,   
                        viewbolt.categ_type,   
                        viewbolt.po_number,   
                        viewbolt.sale_no,   
                        viewbolt.cust_no,   
                        viewbolt.trade_no,   
                        viewbolt.rpt_no,   
                        viewbolt.re_value_price,   
                        viewbolt.unit_price,
                        item_master.wei_ave_price,
                        viewbolt.ys_name ,
                        item_master.item_uom,
                        customer.sal_name,
                        customer.cust_name,
                        item_master.item_desc,
                        item_master.item_sub_categ_code,
                        item_categ.item_sub_categ_desc,   
                        customer.trademark_name,
                        purchase_order.order_date,
                        purchase_order.remarks,
                        viewbolt.first_in_date,
                        datepart(day,viewbolt.first_in_date) as first_in_day,
                        datepart(month,viewbolt.first_in_date) as first_in_month,
                        datepart(year,viewbolt.first_in_date) as first_in_year,
                        ceiling(convert(dec(6,2),datediff(day,viewbolt.first_in_date,getdate()))/30) as aging_categ,
                        '0',
                        '',
         buyer.buyer_name_ch,purchase_order.buyer

FROM viewbolt,customer,item_master,purchase_order,item_categ,buyer
WHERE viewbolt.sale_no = customer.sal_noand
                        viewbolt.cust_no = customer.cust_no and
                        viewbolt.trade_no= customer.trade_no and
                        viewbolt.item_code = item_master.item_code and
                        ( item_master.item_sub_categ_code = item_categ.item_sub_categ_code ) and
                        viewbolt.po_number *= purchase_order.po_number and
         purchase_order.buyer *= buyer.buyer_name and
                        (( viewbolt.in_no >= '%' ) AND
                        ( viewbolt.in_no <= '%' ) or
                        (viewbolt.in_no like '%' and '%'='%' )) and
                        ( viewbolt.item_code like '%' ) AND
                        ( viewbolt.loc_number like '%' ) AND
                        ( viewbolt.categ_type like '%' ) and
                        viewbolt.out_no='' and viewbolt.dispart <>'T' and
                        viewbolt.sale_no like '%'   and
                        viewbolt.cust_no like '%'   and
                        viewbolt.trade_no like '%' and
         not exists (select 1 from stock_list
                           where stock_list.bolt_pcno = viewbolt.bolt_pcno
                               )

UNION

SELECT a.in_no,   
                        a.item_code,   
                        a.bolt_pcno,   
                        a.color_no,   
                        a.lot_no,   
                        a.bolt_no,   
                        a.area_no,   
                        a.scalar_qty,   
                        a.curr_qty,   
                        a.in_date,   
                        a.loc_number,   
                        a.categ_type,   
                        a.po_number,   
                        a.sale_no,   
                        a.cust_no,   
                        a.trade_no,   
                        a.rpt_no,   
                        a.re_value_price,   
                        a.unit_price,
                        c.wei_ave_price,
                        a.ys_name ,
                        c.item_uom,
                        b.sal_name,
                        b.cust_name,
                        c.item_desc,
                        c.item_sub_categ_code,
                        e.item_sub_categ_desc,   
                        b.trademark_name,
                        d.order_date,
                        d.remarks,
                        a.first_in_date,
                        datepart(day,a.first_in_date) as first_in_day,
                        datepart(month,a.first_in_date) as first_in_month,
                        datepart(year,a.first_in_date) as first_in_year,
                        ceiling(convert(dec(6,2),datediff(day,a.first_in_date,getdate()))/30) as aging_categ,
                        f.status,
                        f.remark,
                        g.buyer_name_ch,d.buyer
FROM wiseform..viewbolt a,
                wiseform..customer b,
                wiseform..item_master c,
                wiseform..purchase_order d,
                wiseform..item_categ e,
                wiseform..stock_list f,wiseform..buyer g
WHERE a.sale_no = b.sal_noand
                a.cust_no = b.cust_no and
                a.trade_no= b.trade_no and
                a.item_code = c.item_code and
                c.item_sub_categ_code = e.item_sub_categ_code and

                a.bolt_pcno = f.bolt_pcno and
                d.buyer *= g.buyer_name and
                a.po_number *= d.po_number and
                (( a.in_no >= '%' ) AND
                ( a.in_no <= '%' ) or
                ( a.in_no like '%' and '%' ='%' )) and
                ( a.item_code like '%' ) AND
                ( a.loc_number like '%' ) AND
                ( a.categ_type like '%' ) and
                a.out_no='' and
                a.dispart <>'T' and
                a.sale_no like '%'and
                a.cust_no like '%' and
                a.trade_no like '%'

UNION

SELECT a.in_no,   
                        a.item_code,   
                        a.bolt_pcno,   
                        a.color_no,   
                        a.lot_no,   
                        a.bolt_no,   
                        a.area_no,   
                        a.scalar_qty,   
                        a.curr_qty,   
                        a.in_date,   
                        a.loc_number,   
                        a.categ_type,   
                        a.po_number,   
                        a.sale_no,   
                        a.cust_no,   
                        a.trade_no,   
                        a.rpt_no,   
                        a.re_value_price,   
                        a.unit_price,
                        c.wei_ave_price,
                        a.ys_name ,
                        c.item_uom,
                        b.sal_name,
                        b.cust_name,
                        c.item_desc,
                        c.item_sub_categ_code,
                        e.item_sub_categ_desc,   
                        b.trademark_name,
                        d.order_date,
                        d.remarks,
                        a.first_in_date,
                        datepart(day,a.first_in_date) as first_in_day,
                        datepart(month,a.first_in_date) as first_in_month,
                        datepart(year,a.first_in_date) as first_in_year,
                        ceiling(convert(dec(6,2),datediff(day,a.first_in_date,getdate()))/30) as aging_categ,
                        '0',
                        '',
                        g.buyer_name_ch,d.buyer
FROM wiseform..viewbolt a,
                wiseform..customer b,
                wiseform..item_master c,
                wiseform..purchase_order d,
                wiseform..item_categ e,
                wiseform..buyer g
WHERE a.sale_no = b.sal_noand
                a.cust_no = b.cust_no and
                a.trade_no= b.trade_no and
                a.item_code = c.item_code and
                c.item_sub_categ_code = e.item_sub_categ_code and
                a.po_number *= d.po_number and
      d.buyer *= g.buyer_name and
                (( a.in_no >= '%' ) AND
                ( a.in_no <= '%' ) or
                ( a.in_no like '%' and '%' ='%' )) and
                ( a.item_code like '%' ) AND
                ( a.loc_number like '%' ) AND
                ( a.categ_type like '%' ) and
                a.out_no='' and
                a.dispart <>'T' and
                a.sale_no like '%'and
                a.cust_no like '%' and
                a.trade_no like '%' and
      not exists (select 1 from wiseform..stock_list f
                        where f.bolt_pcno = a.bolt_pcno
                               )
大侠帮忙看看
页: [1]
查看完整版本: 求救:查询一直在等待