Questione : Aiuto di bisogno con una domanda complessa in TSQL

Ciao esperti ho bisogno di un aiuto per quanto riguarda una domanda che sto sviluppandomi, lasciarlo spiegano il processo first.
I hanno una lima di Excel con i dati e sta caricanda in una Tabella (File_Master) nell'intestazione di SQl server.

The della lima di Excel è come:
FileNo, Name, Address, Company, telefono, email, Var1, Var2, Var3, Var4, Var5, Var6, Var7, Var8, Var9, Var10

Structure della mia Tabella (File_Master): il
ID, FileNo, Name, Address, Company, telefono, email, Var1, Var2, Var3, Var4, Var5, Var6, Var7, Var8, Var9, Var10

Values che entrano in tabella è Like

1, 101, aa, 12 st, Comp1, 657646984, [email protected], DCB, gfh, hgf, jhg
2, 101, zdvf, 13 st, Comp2, 657646984, [email protected], DCB, gfh, hgf, jhg
3, 101, er, 112 st, Comp3, 657646984, [email protected], DCB, gfh, hgf, jhg
4, 102, fef, 156 st, Comp11, 657646984, [email protected], DCB, gfh, hgf, jhg, gfh, hgf, jhg
5, 102, sdf, 165 st, Comp13, 657646984, [email protected], DCB, gfh, hgf, jhg, gfh, hgf, jhg
6, 103, hgj, 1656 st, Comp34, 657646984, [email protected]
7, 103, er, 15645 st, Compa, 657646984, [email protected]
8, 104, zd, 145 st, Comp23, 657646984, [email protected], bcd
9, 105, rt, 154 st, Compe2, 657646984, [email protected], DCB, gfh
10, 105, rer, 156 st, Comp456, 657646984, [email protected], DCB, gfh
11, 101, fd, 154 st, Comp65, 657646984, [email protected], DCB, gfh, hgf
12, 101, TW, 154 st, Comp34, 657646984, [email protected], DCB, gfh, hgf

I hanno una nuova tabella (File_Column_Master) come questo: il

ID, FileNo, FileDesc, ColumnName, OriginalColumnName

Values che entrano in tabella è Like

1, 101, File1, Var1, OGCol1
2, 101, File1, Var2, OGCol2
3, 101, File1, Var3, OGCol3
4, 101, File1, Var4, OGCol4
5, 102, File2, Var1, File2Col1
6, 102, File2, Var2, File2Col2
7, 102, File2, Var3, File2Col3
8, 102, File2, Var4, File2Col4
9, 102, File2, Var5, File2Col5
10, 102, File2, Var6, File2Col6
11, 102, File2, Var7, File2Col7
12, 104, File4, Var1, MyOrigCol1
13, 105, File5, Var1, CCOL1
14, 105, File5, Var2, nomi di colonna di CCol2

The nel File_master pospongono Var1, Var2, Var3, Var4, Var5, Var6, Var7, Var8, Var9, Var10 hanno loro nomi di colonna originali nel requisito di File_Column_Master table.

My sono come devo sviluppare una domanda generica unendo queste 2 tabelle ai dati prescelti da una lima specifica con i nomi di colonna originali nell'intestazione.

Suppose se devo selezionare soltanto i dati per FileNo: 101 che la mia intestazione dovrebbe assomigliare a this

ID, FileNo, Name, Address, Company, telefono, email, OGCOL1, OGCOL2, OGCOL3, OGCOL4

And se devo selezionare i dati per FileNo 102 la mia intestazione dovrebbero assomigliano a this

ID, FileNo, Name, Address, Company, il telefono, il email, File2Col1, File2Col2, il File2Col3, File2Col4, File2Col5, File2Col6, il mio requisito di File2Col7


So è come devo sviluppare una domanda generica e l'utente cambia no della lima in dove clausola quando mai want.

Is là un senso che questa domanda può essere scritta, o è possibile. Per me che realmente non ho un indizio circa come sviluppare una domanda come i suggerimenti di this.

Your lo aiuterà notevolmente, tutto l'aiuto sarebbe…


Thanks .....
class= del

Risposta : Aiuto di bisogno con una domanda complessa in TSQL

Lo penso bisogno SQL dinamico là. Così forse qualcosa di simile

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
dichiarare il @strSQL varchar (massimo) 
dichiarare i @cols varchar (massimo)
dichiarare il @FileNo int

regolare il @fileNo = 101

regolare i @cols = il roba ((selezionare  “,„ + OriginalColumnName a partire da File_Column_Master dove Fileno = @FileNo per il percorso del xml ('')), 1, 1, '')

regolare il @strSQL = “ID, FileNo, Name, Address, Company prescelta, il telefono, email,„ + @cols + “da yourtable dove l'identificazione =„ + ha lanciato (@FileNo come varchar)

exec (@strSQL)
Altre soluzioni  
 
programming4us programming4us