title: tsql query analyzer : how do you reduce "cost"?
body: <p>I'm running sql analyzer on the following query </p>
  
  <pre><code>SELECT bl.Invoice_Number, bl.Date_Invoice, ti.TranNo, bt.Description,
      CONVERT(decimal(15,2), bl.Invoice_Amount) AS Invoice_Amount, co.Company_ID, co.Account_Nbr,
      isnull(bl.Reference,' ') as Reference, bl.Billing_Log_RecID AS BillingKey
      FROM [CONN.domain.NET].cwwebapp.dbo.Billing_Log bl
      LEFT JOIN [App].dob.tarInvoice ti
          ON bl.Invoice_Number = dbo._fnStripLeadZeros(ti.TranNo)
      INNER JOIN [CONN.domain.NET].cwwebapp.dbo.Billing_Type bt
          ON bl.Billing_Type_ID = bt.Billing_Type_ID
      LEFT JOIN [CONN.domain.NET].cwwebapp.dbo.Company co
          ON  bl.Company_RecID = co.Company_RecID
      WHERE bl.Date_Invoice &gt;= '2009-05-05'
          AND ti.TranNo IS NULL
          AND bl.Invoice_Amount &lt;&gt; 0
          AND bl.Billing_Type_ID &lt;&gt; 'D'
          AND bl.Billing_Type_ID &lt;&gt; 'P'
  --      AND bl.Billing_Type_ID &lt;&gt; 'M'
  Order By bl.Invoice_Number
  </code></pre>
  
  <p>The query runs on the [App] server and connects to [Conn] sql server to do a join
  and the diagram is telling me </p>
  
  <pre><code>remote query cost : 62%
  customered index scan [App].[dbo].tarInvoice.[PK__...  Cost : 34% 
  </code></pre>
  
  <p>This query is taking 2 mins to run.  Any ideas on how would I go about figuring out how to make this run more efficiently? I"m guessing it has to do with connecting to another sql server on the same network.  </p>
  
  <p>thanks in advance.</p>