Frage : Notwendigkeits-Hilfe bei einer komplizierten Frage in TSQL

Hallo Experten benötige ich eine Hilfe betreffend eine Frage, die ich entwickele, mich lassen erklären den Prozess first.
I haben eine Excel-Akte mit Daten und sie geladen in eine Tabelle (File_Master) Überschrift in der SQl-server.

The der Excel-Akte ist wie:
FileNo, Name, Address, Company, Telefon, eMail, Var1, Var2, Var3, Var4, Var5, Var6, Var7, Var8, Var9, Var10

Structure meiner Tabelle (File_Master):
ID, FileNo, Name, Address, Company, Telefon, eMail, Var1, Var2, Var3, Var4, Var5, Var6, Var7, Var8, Var9, Var10

Values, die in Tabelle einsteigen, sind Like

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

I haben eine weitere Tabelle (File_Column_Master) so:

ID, FileNo, FileDesc, ColumnName, OriginalColumnName

Values, die in Tabelle einsteigen, sind 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, verlegen 104, File4, Var1, MyOrigCol1
13, 105, File5, Var1, CCOL1
14, 105, File5, Var2, CCol2

The Spalten-Namen im File_master Var1, Var2, Var3, Var4, Var5, Var6, Var7, Var8, Var9, Var10 haben ihre ursprünglichen Spaltennamen in der File_Column_Master table.

My Anforderung ist n, wie ich eine generische Frage entwickeln muss, indem ich diese 2 Tabellen zu den auserwählten Daten von einer spezifischen Akte mit den ursprünglichen Spaltennamen in der Überschrift verbinde.

Suppose, wenn ich nur Daten für FileNo vorwählen muss: 101, die meine Überschrift wie this

ID aussehen sollte, FileNo, Name, Address, Company, Telefon, eMail, OGCOL1, OGCOL2, OGCOL3, OGCOL4

And, wenn ich Daten für FileNo 102 meine Überschrift aussehen wie this

ID, sollten FileNo, Name, Address, Company, Telefon, eMail, File2Col1, File2Col2, File2Col3, File2Col4, File2Col5, File2Col6 vorwählen muss, File2Col7


So ist meine Anforderung, wie ich eine generische Frage entwickeln muss und der Benutzer das Akten-Nr. in wo Klausel wenn überhaupt sie want.

Is dort eine Weise, dass diese Frage geschrieben werden kann, ändert oder ist sie möglich. Für mich, den ich wirklich nicht einen Anhaltspunkt habe über, wie man eine Frage wie this.

Your Vorschläge entwickelt, hilft mir groß, jede mögliche Hilfe sein in hohem Grade geschätztes…


Thanks im Voraus .....

Antwort : Notwendigkeits-Hilfe bei einer komplizierten Frage in TSQL

Ich denke Sie Notwendigkeit dynamischer SQL dort. So möglicherweise etwas Ähnliches

1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
das @strSQL erklären, das varchar ist (maximal) 
die @cols erklären, die varchar sind (maximal)
@FileNo int erklären

@fileNo einstellen = 101

@cols = Material einstellen ((„  ,“ + OriginalColumnName von File_Column_Master vorwählen, wo Fileno = @FileNo für xml Weg ('')), 1, 1, '')

@strSQL einstellen = „auserwählte ID, FileNo, Name, Address, Company, Telefon, eMail,“ + @cols + „von yourtable, wo Identifikation =“ + warf (@FileNo, wie varchar)

exec (@strSQL)
Weitere Lösungen  
 
programming4us programming4us