2016-10-10 74 views
0

我有一個名爲BuildQuery的函數,它將一組值作爲參數。將字符串數組傳遞給PowerShell函數

Function BuildQuery { 
Param($start, [String[]] $KeyFields, [String] $Sch, [String] $TableName) 
$Query = "select $KeyFields from '$Sch'.'$TableName'" 
} 

我要調用的函數爲:

BuildQuery -start start -KeyFields name, id, age, salary -Sch dbo -TableName Employee 

例如:我想使用PowerShell功能構建查詢"select name, id, age, salary from dbo.Employee " 。我正在使用函數的唯一原因是我想一次又一次地看到它構建像這樣的查詢。

回答

5

使用the -join operator展開數組作爲一個逗號分隔的列表:

Function BuildQuery { 
    Param($start, [String[]] $KeyFields, [String] $Sch, [String] $TableName) 
    $Query = "select $($KeyFields -join ',') from '$Sch'.'$TableName'" 
} 
+0

啊,你只是一個剔更快:-) –

+1

@MartinBrandl你級別比我要近2周,偉大的,是全速返回:-D –

+0

太棒了!那正是我想要的! 。由於時間限制,無法接受答案。所以等待它完成:) – HadoopAddict