2121И как вызвать её:
2222
2323``` sql
24- CALL add_new_sale(ARRAY( ARRAY( ' DJI Avata' ,1 ,1168 .00 ), ARRAY( ' iPhone 14' ,1 ,799 .90 ), ARRAY( ' iWatch' ,2 ,249 .99 ) ) );
24+ CALL add_new_sale([[ ' DJI Avata' ,1 ,1168 .00 ], [ ' iPhone 14' ,1 ,799 .90 ], [ ' iWatch' ,2 ,249 .99 ]] );
2525```
2626
2727
@@ -107,7 +107,7 @@ SET @variable = ({SQL command});
107107
108108``` sql
109109SET @value = 12 .5 ;
110- SET @arr = ARRAY( 11 , 2 .5 , ' hello!' , x' 6120622063' ) ;
110+ SET @arr = [ 11 , 2 .5 , ' hello!' , x' 6120622063' ] ;
111111SET @result = @qty * @price;
112112SET @name, @price = SELECT name, price FROM products WHERE id = 123 ;
113113SET @ids = (SELECT id FROM products WHERE price > 250 );
@@ -209,8 +209,8 @@ END LOOP;
209209
210210Входные данные могут быть одним из следующих:
211211
212- - ARRAY литерал
213- - ARRAY переменная
212+ - LIST литерал
213+ - LIST переменная
214214- SELECT
215215- INSERT с RETURNING-клаузой
216216- UPDATE с RETURNING-клаузой
@@ -219,19 +219,19 @@ END LOOP;
219219
220220Вот несколько примеров:
221221
222- * С ARRAY литералом
222+ * С LIST литералом
223223
224224```
225225CREATE OR REPLACE PROCEDURE sum_array() BEGIN
226226 SET @sum = 0;
227- FOREACH @item IN ARRAY( 11,22,33) DO
227+ FOREACH @item IN [ 11,22,33] DO
228228 SET @sum = @sum + @item;
229229 END LOOP;
230230 RETURN @sum;
231231END
232232```
233233
234- * С ARRAY переменной
234+ * С LIST переменной
235235
236236```
237237CREATE OR REPLACE PROCEDURE sum_array(@arr) BEGIN
@@ -289,22 +289,22 @@ CALL {procedure_name} ([{expression} [, {expression}...]]);
289289
290290- литеральное значение
291291- переменная
292- - литерал ARRAY
292+ - литерал LIST
293293
294294Вот несколько примеров:
295295
296296``` sql
297297CALL compute(11 , 22 );
298298CALL compute(@val1, @val2);
299- CALL add_new_sale(ARRAY( ARRAY( ' iphone 14' ,1 ,1234 .00 ), ARRAY( ' ipad' ,1 ,2345 .90 ), ARRAY( ' iwatch' ,2 ,499 .99 ) ) );
299+ CALL add_new_sale([[ ' iphone 14' ,1 ,1234 .00 ], [ ' ipad' ,1 ,2345 .90 ], [ ' iwatch' ,2 ,499 .99 ]] );
300300```
301301
302302Оператор ` CALL ` возвращает результат, возвращаемый процедурой, таким же образом, как оператор ` SELECT ` .
303303
304304При выполнении внутри процедуры можно присвоить возвращаемое значение переменной:
305305
306306``` sql
307- SET @sale_id = CALL add_new_sale(ARRAY( ARRAY( ' iphone 14' ,1 ,1234 .00 ), ARRAY( ' ipad 12' ,1 ,2345 .90 ) ) );
307+ SET @sale_id = CALL add_new_sale([[ ' iphone 14' ,1 ,1234 .00 ], [ ' ipad 12' ,1 ,2345 .90 ]] );
308308```
309309
310310
0 commit comments