Product:
Microsoft SQL server 2016 database
Issue:
How let the user select what rows should be shown in the view?
Solution:
Not possible direct in a SQL view.
https://www.mssqltips.com/sqlservertip/5147/limitations-when-working-with-sql-server-views/
A workaround is to have a table that the user update with the value they want to select on, and then in the view join on that table and filter on that particulare value.
If you want the ID column to match a PERIOD value, create a parameter table first
CREATE TABLE [admin].[Parameter]( [key_Parameter] [int] IDENTITY(1,1) NOT NULL, [Period] [nvarchar](200) NULL, ) ON [PRIMARY]
Add the select value into the the table.
Then create a view – you have to update the view code below to reflect your table columns;
CREATE VIEW [DM].[Konto-Period] AS SELECT Kontonummer, ID FROM DM.kontotabell a JOIN [admin].[Parameter] b on a.[ID] = b.[Period] -- WHERE a.[ID] = b.[Period]
This will when run check against the value in the parameter table.
Then you have to figure out a way for end user to update the parameter table.
More Information:
https://www.sqltutorial.org/sql-date-functions/sql-convert-string-to-date-functions/