wypełnianie tabeli wartościami z zakresu

0

Witam

mam takie zadanie, do tabeli numbers wstawić liczby od 0 do 9999
to tego celu mam zrobić tabele pomocniczą

CREATE TEMPORARY TABLE digits (digit CHAR(1) PRIMARY KEY);

i wypełnić wartościami

INSERT INTO digits VALUES ('0'), ('1'), ('2'), ('3'), ('4'), ('5'), ('6'), ('7'), ('8'), ('9');

i mam taką odpowiedź

insert intonumbers (number) select (d1.digit||d2.digit||d3.digit||d4.digit)::int from digits d1,digits d2,digits d3,digits d4

od select nierozumiem zapisu po co to ::, dlaczego int from, skąd d1 d2 ... , oraz po co || i co oznacza
prosze pomoc

dodanie znaczników <code class="sql">, <quote> i kilku `` - fp

0
  1. ::int - konwersja do inta
  2. || - konkatenacja (łączenie łańcuchów)
  3. d1 d2 - zwykłe aliasy, w tym przypadku tej samej tabeli -> from digits d1,digits d2,digits d3,digits d4

to zapytanie wybiera 4 znaki (tu akurat cyfry, cyfry - nie liczby), skleja w jeden łańcuch i na tym łańcuchu wykonuje konwersję do liczby całkowitej

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0