MS SQL formuły w polach

0

Witam,
mam prostą tabelę z kolumnami:
wartosc A,
wartosc B,
formula

pierwsze 2 pola to liczby, pole formula ma np wartość 'wartosc A * wartosc B' lub zawiera wzór dowolnego działania matematycznego na polach wartosc A i wartosc B.
Czyli np:

5
8
'wartosc A * wartosc B'

Jak napisać SELECT żeby uzyskać odpowiedź:
5
8
40

pozdrawiam i dziękuję
Marcin

0

Jak? To jest proste. Dynamic SQL. Czyli np:

declare  @sql_stm nvarchar(1024)
SET @sql_stm = 'SELECT ' + formula + ' FROM tabela'
EXEC sp_executesql @sql_stm 

Tylko kłopoty zaczynają się, gdy serwer SQL inaczej zinterpretuje wyrażenie niż człowiek, który je wpisał. Na przykład należałoby wpisać coś w stylu '[wartosc A] * [wartosc B]' zamiast 'wartosc A * wartosc B'. Czyli kłania się stworzenie interpretera wyrażeń.

1 użytkowników online, w tym zalogowanych: 0, gości: 1