Wie Encapsulate zwischen Anweisung in SQL Server.Wie Encapsulate zwischen Anweisung in SQL Server
Ich habe eine Menge Code zu refactor, die lange Liste von Where-Klauseln mit der gleichen Between-Anweisung, die magische Zahlen haben, und ich möchte es umgestalten. Es ist möglich, BETWEEN zu kapseln.
Beispiel: Die Abfrage hat etwas ähnliches wie diese, und es gibt nicht die Möglichkeit dies nur ein einfaches Beispiel kommen zu zeigen, dass ich etwas in dem haben möchte, wenn dies nicht ist, die zwischen
SELECT ...
FROM Table0
WHERE Id BETWEEN 3456 AND 15500;
...
SELECT ...
FROM Table1
WHERE Id BETWEEN 3456 AND 15500;
...
SELECT ...
FROM Table2
WHERE Id BETWEEN 3456 AND 15500;
Können Sie sich auf, was Sie in diesem Zusammenhang von encapsulate bedeuten? Wenn Sie dieselben hartcodierten Werte nicht ständig wiederverwenden möchten, sollten Sie sie in Variablen speichern und die Variablen in Ihren Abfragen verwenden. Dies würde im Wesentlichen erlauben, sie in einem einzigen Bereich zu definieren. –
Die Kapselung, die ich suche, ist vielleicht nicht möglich, weil ich in Java und C# denke, um den Code zu organisieren. Ich möchte etwas mit dem gleichen Effekt, dass in C# eine lange ändern, wenn (x> 3456 & & x <15500) für if (IsValidId) wo IsValid => (x> 3456 & & x <15500). Also ein WHERE IsValid. Diese Art der Kapselung, nach der ich suche, bin mir aber nicht sicher, ob SQL diese Idee zulässt. – Devsined