SQL sorgusu ---------- kolonlar
S_Acc_RowID BU_Customer_Segment PBU
1111-00 PSG SMB -1
1111-00 SMB -1
1111-00 EB Seg 1
1111-01 PSG SMB 1
1111-01 SMB -1
1111-01 EB data -1
1111-02 PSG Seg -1
1111-02 Unattended -1
1111-02 Channels -1
aşağıdaki tür bir veritabanı tablo var
için istenen değerlere sahip veri tek bir satır almak için ------ benzeri 7.000.000 satır
şimdi koşullar1) if the **Acc ID** is having 'EB --' in **CustSeg** then select that **CustSeg** value
2) if **Acc Id** is not having any 'EB -- ' in CustSeg then select **CustSeg** where **PBU** = 1
3) if the both above failed take any one value of the **CustSeg**
her biri Acc kimliği için tek satırda özü istiyorumve ben aşağıdaki sorguyu
select
distinct(A.[S_Acc_RowID]) as [Account_RowID],
[EB Customer Segment] =
case
when LEFT(A.[BU_Customer_Segment],2) = 'EB' then A.[BU_Customer_Segment]
when LEFT(A.[BU_Customer_Segment],2) != 'EB' then
(select B.[BU_Customer_Segment] from
dbo.[SiebelAccount Extract] B
where A.[S_Acc_RowID]=B.[S_Acc_RowID]
and [PBU] = 1)
else A.[BU_Customer_Segment]
end,
A.[S_Acc_AMID2#] as [AMID Level 2(Acc)],
A.[S_Acc_Login_P] as [Sales Team(Acc)],
A.[S_Acc_Org_P] as [Country_det],
A.[Customer AMID Level 2 Name(ACC)]
from dbo.[SiebelAccount Extract] A
kullanıyorum
S_Acc_RowID BU_Customer_Segment
1111-00 EB seg
1111-01 EB Data
1111-02 (any one of three[PSG seg/ UNattended/channels])
gibi istediğim uç veri olmalıdır Ama bu
S_Acc_RowID BU_Customer_Segment
1111-00 EB seg
1111-01 PSG SMB
1111-01 EB Data
1111-02 null
gibi verilerin geri dönüyor ID 1111-01 için iki satır görüntülemek istemiyorum. EBile yalnızca bir satır istiyorum
bana bu konuda yardım lütfen .. peşin
Teşekkür ..
Alkış,
Harish
+1 SQL Server hemen hemen aynı davranır. Çalıştığım, neredeyse özdeş bir sorgum var ama beni bir dakikalığına dövüyorsun :). –
Merhaba, Cevabınız için teşekkürler. Ama ben 1111-01 için sonuç 'EB%', PSG biri olarak istiyorum .. Ve ayrıca benim masada 7 milyon satır var, bu yüzden hızlı çalıştırmak için basit bir sorguya sahip olmayı düşünüyorum .. – harry
Teşekkürler Lieven =) – mcha