2009-06-08 52 views
0

我正在爲特定實例中的每個數據庫調度對錶的查詢。每個數據庫的查詢和表都是相似的。我將查詢結果指向文本文件。在查詢結果之前,我將包含特定查詢所在的數據庫。然而,在我在AdventureWorks中的測試中,我得到的結果是一個數據庫名稱,下劃線很長。如何從查詢結果中縮短長下劃線在sql server 2005中

下面是我得到的輸出:

DatabaseName 
------------------------------------------------------------------------------- 
AdventureWorks                               

AttemptDate    
----------------------- 
2009-05-29 12:54:28.460 

下面是我調用查詢:

set nocount on 
use AdventureWorks 
GO 
select DB_NAME()as DatabaseName 
select AttemptDate from dbo.ChangeAttempt 

我的問題是:如何縮短數據庫名稱下面的線?

回答

1

嘗試:

SELECT LEFT(DB_NAME(), 20) AS DatabaseName 
-1

你會從這個查詢得到什麼輸出?

set nocount on 
use AdventureWorks 
GO 
select DB_NAME() as DatabaseName, AttemptDate from dbo.ChangeAttempt 
2

使用LEFT()

試試這個:

declare @mytabel table (longvalue varchar(1000)) 

select longvalue from @mytabel 

select left(longvalue,50) as longvalue from @mytabel 

輸出:

longvalue 
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 

(0 row(s) affected) 

longvalue 
-------------------------------------------------- 

(0 row(s) affected) 
+2

呵呵。我今天學了些新東西。感謝您發佈此信息。 – 2009-06-08 18:18:04

+0

在文本模式下,sql服務器將爲列的每個可能的字符len放置一個「 - 」減號字符。減少可能的最大長度,並減少「 - 」減去字符...... – 2009-06-08 18:33:50