2016-04-06 12 views
0

SQLのクエリがあり、thatsはうまくいきます。私は、このクエリを使用して2人のSQLクエリが最初に表示されます。

からの連絡先情報を欲しい:

SELECT 
    Contact = STUFF((SELECT ';' + LTRIM(RTRIM(Ad.[Name])) + ', ' + Ba.[IB] + ', ', Ba.[BI] + ', ', Ba.[BN] 
        FROM Ba 
        JOIN Ad ON Ba.AdID = Ad.AdID 
        WHERE Ad.AdNu = '448412' OR Ad.AdNu = '5444877' 
        FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '') 

彼らは私がやりたいです!しかし、今私はいくつかの人が2つの住所を持っているため、このクエリを編集したい、テーブル "Ba"は "IsAdress"という名前の列です。

これらの列は、偽の場合は0、真の場合は1です。今私は私のリストが最初の位置に "IsAdress"列の1とアドレスを表示したいが、どのようにWHEREを変更するのか分からない。どのように私のクエリを取得するのですか?

WHEREおそらく住所であるチェクに他の選択声明がありますか?

私を助けてください。遅延のための

Greetz

答えて

1
SELECT Contact = STUFF((
SELECT ';' + LTRIM(RTRIM(Ad.[Name])) + ', ' + Ba.[IB] + ', ', Ba.[BI] + ', ', Ba.[BN] 
FROM Ba JOIN Ad 
ON Ba.AdID = Ad.AdID 
Where (Ad.AdNu = '448412' OR Ad.AdNu = '5444877') 
ORDER BY Ba.IsAdress DESC 
FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '') 
+0

申し訳ありませんが、私はあなたのクエリを使用している場合。 IsAdressに1があれば、私は行だけを取得します。しかし、私は彼らが最初にIsAdressの1を持つ行を表示し、IsAdressの0を持つ行を表示するリストが必要です。私はIsAdressに0と1で、アルの長いリストを表示したい –

+0

私は –

+0

パーフェクトで注文と編集しました!正常に動作します –

関連する問題