СКЛ Леад Функција

Skl Lead Funkcija



СКЛ леад() функција вам омогућава да приступите следећем реду из тренутног реда са одређеним помаком. Укратко, функција леад() вам омогућава да приступите следећем реду из тренутног. Одређивањем вредности помака, можете приступити следећим 1, 2, 3, итд., редовима од тренутног.

То је супротно од функције лаг() која вам омогућава приступ претходним редовима.







СКЛ Леад() функција

Синтакса функције је следећа:



ЛЕАД(израз_вредности, помак [, подразумевано])
ПРЕКО (
[ПАРТИТИОН БИ партитион_екпрессион]
ОРДЕР БИ сорт_екпрессион [АСЦ | ДЕСЦ]
);

Следећи аргументи су подржани:



  1. вредност_израза – Одређује повратну вредност претходног реда. Израз мора дати једну вредност.
  2. офсет – Одређује колико редова напред од тренутног реда за приступ.
  3. Уобичајено – Поставља подразумевану вредност ако је помак изван опсега партиције. Подразумевано, вредност је подешена на НУЛЛ.
  4. Партитион би – Одређује како да партиционишете податке.
  5. Наручите по – Поставља формат редоследа за редове у свакој партицији.

Пример подешавања података

Пре него што уђемо у рад функције леад(), почнимо са постављањем основне табеле у сврху демонстрације.





ЦРЕАТЕ ТАБЛЕ производи (
продуцт_ид ИНТ ПРИМАРИ КЕИ АУТО_ИНЦРЕМЕНТ,
продуцт_наме ВАРЦХАР(255),
категорија ВАРЦХАР(255),
цена ДЕЦИМАЛ(10, 2),
количина ИНТ,
екпиратион_дате ДАТЕ,
бар код БИГИНТ
);

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ('Куварска капа 25цм',
'пекара',
24.67,
57,
'2023-09-09',
2854509564204);

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ('Препелица јаја - конзервирана',
'остава',
17.99,
67,
'2023-09-29',
1708039594250);

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ('Цоффее - Егг Ног Цапуццино',
'пекара',
92.53,
10,
'2023-09-22',
8704051853058);

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ('Крушка - бодљикава',
'пекара',
65.29,
48,
'2023-08-23',
5174927442238);

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ('Паста - Ангел Хаир',
'остава',
48.38,
59,
'2023-08-05',
8008123704782);

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ('Вино - Просеццо Валдобиаддене',
'произвести',
44.18,
3,
'2023-03-13',
6470981735653);

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ('Пестиво - француски мини асорти',
'остава',
36.73,
52,
'2023-05-29',
5963886298051);

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ('Наранџа - конзервирана, мандарина',
'произвести',
65.0,
1,
'2023-04-20',
6131761721332);

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)
вредности ('Свињетина - плећка',
'произвести',
55.55,
73,
'2023-05-01',
9343592107125);

уметнути
у
производи (назив_производа,
категорија,
Цена,
количина,
Рок употребе,
бар код)

вредности ('Дц Хикиаге Хира Хуба',
'произвести',
56.29,
53,
'2023-04-14',
3354910667072);

Пример 1:

У овом случају, имамо приступ табели „производи“ која садржи информације о производу. Претпоставимо да желимо да добијемо следећи бар код из тренутног реда.

Функцију леад() можемо користити на следећи начин:



Претпоставимо да имамо табелу која садржи следеће информације о запосленима:

изаберите
Назив производа,
Цена,
води (бар код) преко (подела по категорији
наручите по
цена расте) као следећа_ставка
из
производи п;

Дати код дели податке на основу категорије. Затим преузима следећи бар код у партицији користећи функцију леад().

Резултат је следећи:

Пример 2:

Ако не постоји следећи ред у одређеној колони (ван граница), функција поставља вредност на НУЛЛ као што је приказано у претходном примеру.

Да бисмо поставили подразумевану вредност за било који приступ ван опсега, можемо да урадимо следеће:

изаберите
Назив производа,
Цена,
води(баркод, 1, 'Н/А') преко (подела по категорији
наручите по
цена расте) као следећа_ставка
из
производи п;

Поставили смо подразумевану вредност на „Н/А“. Ово би требало да замени било коју вредност ван граница као што је приказано у следећем излазу:

БЕЛЕШКА : Постављање офсета на 1 је слично као да се не наведе ниједна вредност.

Пример 3:

Претпоставимо да желите да приступите следећа два реда из тренутног реда. То можемо учинити тако што ћемо вредност помака поставити на 2.

Пример упита је илустрован у следећем:

изаберите
Назив производа,
Цена,
води (баркод, 2, 'Н/А') преко (подела по категорији
наручите по
цена расте) као следећа_ставка
из
производи п;

Овај упит враћа следећа два реда у свакој партицији као што је приказано у наставку:

То је то!

Закључак

У овом водичу смо научили како да радимо са функцијом леад() да бисмо добили следећу ставку из тренутног реда.