REPEAT
REPEAT(str, count)
Zwraca ciąg znaków powtórzony count razy. Przy liczbie mniejszej niż 1 zwraca pusty ciąg znaków.
Parametry
- str – powtarzany ciąg znaków.
- count – ile razy. 0 lub liczba ujemna daje pusty ciąg znaków.
Przykłady
Przykłady z tabelami customers, products i orders korzystają z przykładowej bazy danych z serii Podstawy SQL.
SELECT REPEAT('★', 4) AS rating, REPEAT('-', 20) AS line, CONCAT('[', REPEAT('ab', 0), ']') AS zero;
+--------+----------------------+------+ | rating | line | zero | +--------+----------------------+------+ | ★★★★ | -------------------- | [] | +--------+----------------------+------+
Prosty wykres stanu magazynu (jeden znak = 5 sztuk):
SELECT name, stock, REPEAT('#', ROUND(stock / 5)) AS chart
FROM products
ORDER BY stock DESC;
+-------------------+-------+----------------------+ | name | stock | chart | +-------------------+-------+----------------------+ | Cane sugar | 100 | #################### | | Green tea | 40 | ######## | | Coffee beans 1 kg | 25 | ##### | | White mug | 12 | ## | | Coffee grinder | 5 | # | | Glass teapot | 0 | | +-------------------+-------+----------------------+
Na co uważać
- Wynik dłuższy niż max_allowed_packet daje NULL. Przy dużych liczbach najpierw oblicz długość.
- Liczba NULL daje NULL.