Alternatywa dla STRING_SPLIT w MSSQL

Poniżej przykład podzielenia tekstu i wprowadzenie go do tabeli. Ciąg znaków odseparowany od siebie np. przecinkiem. Dane w tabeli można dalej przetwarzać w SQL.

Poniższy przykład również pomaga obejść błąd
’STRING_SPLIT’ is not a recognized built-in function name.

Przykładowo mamy ciąg znaków odseparowany przecinkiem:
declare @str2arr as varchar(200);
set @str2arr = '5, 10, 12';

Aby podzielić ciąg znaków (String) i wprowadzić dane do tymczasowej tabeli należy wykonać:
declare @Str2ArrTable as table(p int);

insert into @Str2ArrTable
select trim(split.a.value('.', 'VARCHAR(100)'))
from (select Cast ('' + Replace(@str2arr, ',', '') + '' as XML) as Data) as A
cross apply data.nodes ('/M') AS Split(a);

Dane znajdują się w tabeli. Aby je podejrzeć:
select * from @Str2ArrTable;

Dane z tabeli można wykorzystań np. w innym zapytaniu SQL jako warunek:
select * from Dokumenty where typDok in (
select p from @Str2ArrTable
);

Ograniczenie dostępu do magazynu w Subiekcie

Na chwilę obecną za pomocą interfejsu w systemie Subiekt GT istnieje możliwość udostępnienia tylko jednego lub wszystkich magazynów. Czasami zachodzi konieczność nadania dostępu do więcej niż jednego, ale nie do wszystkich magazynów. W bazie Subiekta znajduje się tabela sl_MagazynProfil, w której są wpisy odpowiedzialne za wykluczenie użytkownika z magazynów.

Poniżej skrypt SQL, który umożliwia wykluczenie z magazynu wszystkich użytkowników z wyjątkiem wskazanych (Kowalski Jan, Lewandowski Marcin, ID 1, ID 2

/* Definicja Magazynu */
declare @magId INT;
set @magId = 10;

/* Usunięcie poprzedniej konfiguracji */
delete from sl_MagazynProfil where pf_IdObiektu = @magId;

/* Nowa konfiguracja */
insert into sl_MagazynProfil
select @magId, uz_Id
from pd_Uzytkownik
where uz_Status = 1
and not (uz_Nazwisko = 'Kowalski' and uz_Imie = 'Jan')
and not (uz_Nazwisko = 'Lewandowski' and uz_Imie = 'Marcin')
and uz_Id not in (1, 2);

/* Podgląd konfiguracji */
select mag_Symbol, uz_Nazwisko, uz_Imie
from sl_MagazynProfil, pd_Uzytkownik, sl_Magazyn
where pf_idUzytkownika = uz_Id and mag_Id = sl_MagazynProfil.pf_IdObiektu and pf_IdObiektu = @magId;

Definicja magazynu ID 10
set @magId = 10;
(...)

Użytkownicy, którzy mają mieć dostęp
(...)
and not (uz_Nazwisko = 'Kowalski' and uz_Imie = 'Jan')
and not (uz_Nazwisko = 'Lewandowski' and uz_Imie = 'Marcin')
and uz_Id not in (1, 2)
(...)

Skrytobójca w Ghost of Tsushima

Gameplay z jednej z misji fabularnych. Zadanie polega na przedostaniu się do Twierdzy Yarikawa ukrytym za wodospadem przejściem. Twierdza jest oblężona przez Mongołów, a podczas wykonywania misji gracz nie może zostać wykryty. Poziom trudności: Śmiertelny (Lethal).

Skyway 2021

Toruński festiwal światła. W tym roku podzielony na trzy zamknięte strefy, w których znajdowały się inscenizacje. Dużo projekcji na różnych obiektach. Impreza płatna 15 PLN / osoba.