2016-10-10 18 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

ああ、あなただけのダニより速くあなたがあることが素晴らしい、ほぼ2週間、私をoutrankedまし@MartinBrandl :-) –

+1

ましたフルスピードで戻る:-D –

+0

恐ろしい!それはまさに私が欲しかったことです! 。まだいくつかの時間制限のために答えを受け入れることができない..それはそれを完了するのを待っている:) – HadoopAddict

関連する問題