Òèïû ñòîëáöîâ â MySQL
Ãëàâíàÿ Ñòðàíèöà » Êíèãè ïî PHP » MySQL óðîêè äëÿ íà÷èíàþùèõ ñ íóëÿ » Òèïû ñòîëáöîâ â MySQL
 ïðåäûäóùèõ ãëàâàõ âû óæå ñòàëêèâàëèñü ñ òèïàìè ñòîëáöîâ. Íî òîãäà âû áûëè çàíÿòû èçó÷åíèåì ñîâñåì äðóãèõ ïîíÿòèé è âîïðîñîâ, òàê ÷òî íå áûëî âîçìîæíîñòè ïîäðîáíî îñòàíàâëèâàòüñÿ íà òèïàõ ñòîëáöîâ. Ìåæäó òåì, îíè ÿâëÿþòñÿ ïðèíöèïèàëüíî âàæíûì ýëåìåíòîì ëþáîé áàçû äàííûõ.
Äåëî â òîì, ÷òî äëÿ êàæäîãî òèïà äàííûõ íåîáõîäèìî âûäåëèòü êàêîå-òî ìåñòî â ïàìÿòè, à ïîòîì êàê-òî ýòè äàííûå îáðàáîòàòü. Âûäåëÿåìîå ìåñòî è àëãîðèòì îáðàáîòêè íàïðÿìóþ çàâèñÿò îò òèïà äàííûõ. Ñëåäîâàòåëüíî, íàäî îïðåäåëÿòü òèï ñòîëáöà, ÷òîáû óêàçàòü, êàêèå èìåííî äàííûå â íåì õðàíÿòñÿ, ñêîëüêî ìåñòà èì íóæíî è ÷òî ñ íèìè ìîæíî äåëàòü.
MySQL ïîääåðæèâàåò ðÿä òèïîâ ñòîëáöîâ, êîòîðûå ìîãóò áûòü ñãðóïïèðîâàíû â òðè êàòåãîðèè: ÷èñëîâûå, òèïû äàòû è âðåìåíè è ñòðîêîâûå (ñèìâîëüíûå). Ýòîò ðàçäåë ñíà÷àëà äàåò êðàòêèé îáçîð äîñòóïíûõ òèïîâ è ñóììèðóåò òðåáîâàíèÿ ê ïàìÿòè äëÿ õðàíåíèÿ êàæäîãî òèïà ñòîëáöîâ, çàòåì îáåñïå÷èâàåò áîëåå äåòàëüíîå îïèñàíèå ñâîéñòâ òèïîâ â êàæäîé êàòåãîðèè.
Îáçîð ïðåäíàìåðåííî êðàòîê. Íèæå ñëåäóþò áîëåå ïîäðîáíûå îïèñàíèÿ, ñ êîòîðûìè íóæíî ñâåðÿòüñÿ äëÿ ïîëó÷åíèÿ äîïîëíèòåëüíîé èíôîðìàöèè îòíîñèòåëüíî ñïåöèôè÷åñêèõ òèïîâ ñòîëáöîâ, òèïà äîïóñòèìûõ ôîðìàòîâ çíà÷åíèé, êîòîðûå âû ìîæåòå îïðåäåëÿòü. Èçó÷èòå ýòó òåìó ïîäðîáíî. Äåëî â òîì, ÷òî ñàìî ôóíêöèîíèðîâàíèå áàçû äàííûõ çàâèñèò îò òîãî, íàñêîëüêî ïðàâèëüíî âû çàäàäèòå òèïû ñòîëáöîâ â òàáëèöå.
Òèïû ñòîëáöîâ, ïîääåðæèâàåìûå MySQL, ïåðå÷èñëåíû íèæå. Ñëåäóþùèå ñèìâîëû êîäà èñïîëüçóþòñÿ â îïèñàíèÿõ:
Ì. Óêàçûâàåò ìàêñèìàëüíûé ðàçìåð îòîáðàæåíèÿ. Ìàêñèìàëüíûé äîïóñòèìûé ðàçìåð îòîáðàæåíèÿ ðàâåí 255. ×òî òàêîå îòîáðàæåíèå, áóäåò ïîäðîáíî ðàññìîòðåíî ïîçäíåå íà êîíêðåòíûõ ïðèìåðàõ.
D. Òî÷íîñòü ÷èñëà äàííîãî òèïà. Ïðèìåíÿåòñÿ ê òèïàì ñ ïëàâàþùåé çàïÿòîé è óêàçûâàåò ÷èñëî öèôð ïîñëå äåñÿòè÷íîé îòìåòêè. Ìàêñèìàëüíîå âîçìîæíîå çíà÷åíèå ðàâíî 30, íî äîëæíî áûòü íå áîëüøå, ÷åì Ì-2.
Êâàäðàòíûå ñêîáêè ([ è ]) óêàçûâàþò ÷àñòè ñïåöèôèêàòîðîâ òèïà, êîòîðûå ÿâëÿþòñÿ ôàêóëüòàòèâíûìè.
Îáðàòèòå âíèìàíèå, ÷òî, åñëè âû îïðåäåëÿåòå äëÿ ñòîëáöà ïàðàìåòð ZEROFILL, MySQL àâòîìàòè÷åñêè äîáàâèò ê ñòîëáöó àòðèáóò UNSIGNED.
TINYINT[(Ì)] [UNSIGNED] [ZER0FILL]
Î÷åíü ìàëåíüêîå öåëîå ÷èñëî. Äèàïàçîí çíà÷åíèé ñî çíàêîì îò -128 äî 127. Äèàïàçîí çíà÷åíèé áåç çíàêà îò 0 äî 255.
SMALLINT[(Ì)] [UNSIGNED] [ZER0FILL]
Ìàëåíüêîå öåëîå ÷èñëî. Äèàïàçîí ñî çíàêîì îò -32768 äî 32767. Äèàïàçîí áåç çíàêà îò 0 äî 65535.
MEDIUMINT[(Ì)] [UNSIGNED] [ZEROFILL]
Öåëîå ÷èñëî ñðåäíèõ ðàçìåðîâ. Äèàïàçîí ñî çíàêîì îò -8388608 äî 8388607. Äèàïàçîí çíà÷åíèé áåç çíàêà îò 0 äî 16777215.
INT[(Ì)] [UNSIGNED] [ZEROFILL]
Öåëîå ÷èñëî íîðìàëüíîãî ðàçìåðà. Äèàïàçîí çíà÷åíèé ñî çíàêîì îò -2147483648 äî 2147483647. Äèàïàçîí çíà÷åíèé áåç çíàêà îò 0 äî 4294967295.
INTEGER[(Ì)] [UNSIGNED] [ZER0FILL]
Ñèíîíèì äëÿ òèïà INT.
BIGINT[(Ì)] [UNSIGNED] [ZEROFILL]
Áîëüøîå öåëîå ÷èñëî. Äèàïàçîí çíà÷åíèé ñî çíàêîì îò -9223372036854775808 äî 9223372036854775807. Äèàïàçîí çíà÷åíèé áåç çíàêà îò 0 äî 18446744073709551615.
Íåêîòîðûå ïîäðîáíîñòè, êîòîðûå âû äîëæíû çíàòü îòíîñèòåëüíî ñòîëáöîâ òèïà BIGINT:
- ïîñêîëüêó âñÿ àðèôìåòèêà â ïàêåòå íà ñàìîì äåëå âûïîëíåíà ñ èñïîëüçîâàíèåì çíà÷åíèÿ òèïîâ BIGINT èëè DOUBLE, âû íå äîëæíû èñïîëüçîâàòü áîëüøèå öåëûå ÷èñëà áåç çíàêà, êîòîðûå èìåþò çíà÷åíèå ïî ìîäóëþ áîëüøåå, ÷åì 9223372036854775807 (63 áèòà) çà èñêëþ÷åíèåì áèòîâûõ ôóíêöèé! Åñëè âû ýòî ñäåëàåòå, íåêîòîðûå èç ïîñëåäíèõ öèôð â ðåçóëüòàòå ìîãóò áûòü îøèáî÷íûìè èç-çà îêðóãëåíèÿ ïðè ïðåîáðàçîâàíèè BIGINT â DOUBLE;
- âû ìîæåòå âñåãäà ñîõðàíÿòü òî÷íîå öåëî÷èñëåííîå çíà÷åíèå â ñòîëáöå BIGINT, ñîõðàíÿÿ åãî êàê ñòðîêó, â ýòîì ñëó÷àå íå áóäåò íèêàêîãî ïðîìåæóòî÷íîãî äâîéíîãî ïðåäñòàâëåíèÿ;
- â MySQL 4.0 âû ìîæåòå èñïîëüçîâàòü öåëûå ÷èñëà, ÷òîáû ñîõðàíèòü áîëüøèå çíà÷åíèÿ áåç çíàêà â ñòðîêàõ BIGINT;
- îïåðàöèè -, + è * èñïîëüçóþò àðèôìåòèêó BIGINT, êîãäà îáà ïàðàìåòðà ïðåäñòàâëÿþò ñîáîé çíà÷åíèÿ òèïà INTEGER. Ýòî îçíà÷àåò, ÷òî åñëè âû óìíîæàåòå äâà áîëüøèõ öåëûõ ÷èñëà (èëè ðåçóëüòàòû ôóíêöèé, êîòîðûå âîçâðàùàþò öåëûå ÷èñëà), âû ìîæåòå ïîëó÷èòü íåïðåäâèäåííûå ðåçóëüòàòû, êîãäà ðåçóëüòàò áîëüøå, ÷åì 9223372036854775807.
FLOAT(precision) [ZEROFILL]
×èñëî ñ ïëàâàþùåé çàïÿòîé. Îáÿçàòåëüíî ñî çíàêîì. Òî÷íîñòü (precision) ìîæåò áûòü â ïðåäåëàõ <=24, äëÿ ÷èñëà ñ îäèíî÷íîé òî÷íîñòüþ, èëè ìåæäó 25 è 53, äëÿ ÷èñëà äâîéíîé òî÷íîñòè. Ýòè òèïû ïîäîáíû FLOAT è DOUBLE, îïèñàííûì íèæå. FLOAT(X) èìååò òîò æå ñàìûé äèàïàçîí, ÷òî è ñîîòâåòñòâóþùèå òèïû FLOAT è DOUBLE, íî ðàçìåð îòîáðàæåíèÿ è ÷èñëî äåñÿòè÷íûõ ÷èñåë íåîïðåäåëåííû.  MySQL âåðñèè 3.23 ýòî è åñòü èñòèííîå çíà÷åíèå ñ ïëàâàþùåé çàïÿòîé.
 ñòàðûõ âåðñèÿõ MySQL FLOAT(precision) âñåãäà èìååò 2 äåñÿòè÷íûõ ÷èñëà. Îáðàòèòå âíèìàíèå, ÷òî èñïîëüçîâàíèå òèïà FLOAT ìîæåò ñîçäàâàòü âàì íåêîòîðûå íåïðåäâèäåííûå ïðîáëåìû, ïîñêîëüêó âñå âû÷èñëåíèÿ â MySQL âñåãäà âûïîëíåíû ñ äâîéíîé òî÷íîñòüþ.
FLOAT[(Ì,D)] [ZEROFILL]
Ìàëåíüêîå (ñ îäèíî÷íîé òî÷íîñòüþ) ÷èñëî ñ ïëàâàþùåé çàïÿòîé. Íå ìîæåò áûòü áåç çíàêà. Äîïóñòèìûå çíà÷åíèÿ îò -3.402823466Å+38 äî -1.175494351Å-38, 0 è îò 1.175494351Å-38 äî 3.402823466Å+38. Ì çàäàåò ðàçìåð îòîáðàæåíèÿ, a D îïðåäåëÿåò êîëè÷åñòâî äåñÿòè÷íûõ ÷èñåë. Ñîîòâåòñòâóåò FLOAT (X), ãäå X <= 24.
DOUBLE[(M,D)] [ZEROFILL]
×èñëî íîðìàëüíîãî ðàçìåðà (äâîéíàÿ òî÷íîñòü) ñ ïëàâàþùåé çàïÿòîé. Íå ìîæåò áûòü áåç çíàêà. Äîïóñòèìûå çíà÷åíèÿ îò -1.7976931348623157Å+308 äî -2.2250738585072014Å-308, 0 è îò 2.2250738585072014Å-308 äî 1.7976931348623157Å+308. Ì çàäàåò ðàçìåð îòîáðàæåíèÿ, a D - ÷èñëî äåñÿòè÷íûõ ÷èñåë. Ñîîòâåòñòâóåò DOUBLE áåç ïàðàìåòðà èëè FLOAT(X), ãäå 25 <= X <= 53.
DOUBLE PRECISION[(M,D)] [ZEROFILL] MREAL[(M,D)] [ZEROFILL]
Ñèíîíèìû äëÿ òèïà DOUBLE.
DECIMAL[(M[,D])] [ZEROFILL]
Ðàñïàêîâàííîå ÷èñëî ñ ïëàâàþùåé çàïÿòîé. Íå ìîæåò áûòü áåç çíàêà! Âåäåò ñåáÿ ïîäîáíî ñòîëáöó CHAR: «ðàñïàêîâàííûé» îçíà÷àåò, ÷òî ÷èñëî ñîõðàíåíî êàê ñòðîêà ñèìâîëîâ ñ èñïîëüçîâàíèåì îòäåëüíîãî ñèìâîëà äëÿ êàæäîé öèôðû çíà÷åíèÿ. Äåñÿòè÷íàÿ îòìåòêà è çíàê ìèíóñ äëÿ îòðèöàòåëüíûõ ÷èñåë íå ðàññ÷èòàíà â Ì (íî ìåñòî äëÿ íèõ çàðåçåðâèðîâàíî). Åñëè D=0, çíà÷åíèÿ íå áóäóò èìåòü íèêàêîé äåñÿòè÷íîé îòìåòêè èëè äðîáíîé ÷àñòè. Ìàêñèìàëüíûé äèàïàçîí çíà÷åíèé DECIMAL àíàëîãè÷åí DOUBLE, íî ôàêòè÷åñêèé äèàïàçîí äëÿ äàííîãî êîíêðåòíîãî ñòîëáöà DECIMAL ìîæåò áûòü çàäàí ÷åðåç Ì è D.
Åñëè D íå çàäàíî, îíî áóäåò óñòàíîâëåíî â 0. Åñëè æå íå çàäàíî Ì, îíî ñ÷èòàåòñÿ ðàâíûì 10. Îáðàòèòå âíèìàíèå, ÷òî â MySQL 3.22 àðãóìåíò Ì äîëæåí âêëþ÷àòü ìåñòî, íåîáõîäèìîå äëÿ çíàêà è äåñÿòè÷íîé îòìåòêè.
NUMERIC(Ì,D) [ZEROFILL]
Ñèíîíèì äëÿ òèïà DECIMAL.
DATE
Äàòà. Ïîääåðæèâàåìûé äèàïàçîí: îò 1000-01-01 äî 9999-12-31. MySQL îòîáðàæàåò çíà÷åíèÿ DATE â ôîðìàòå (YY) YY-MM-DD, íî ïîçâîëÿåò âàì íàçíà÷àòü çíà÷åíèÿ ñòîëáöàì DATE, èñïîëüçóÿ ñòðîêè èëè ÷èñëà.
DATETIME
Êîìáèíàöèÿ äàòû è âðåìåíè. Ïîääåðæèâàåìûé äèàïàçîí: îò 1000-01-01 00:00:00 äî 9999-12-31 23:59:59. MySQL îòîáðàæàåò çíà÷åíèÿ òèïà DATETIME â ôîðìàòå (YY) YY-MM-DD ÍÍ:ÌÌ: SS, íî ïîçâîëÿåò âàì íàçíà÷àòü çíà÷åíèÿ ñòîëáöàì DATETIME, èñïîëüçóÿ ñòðîêè èëè ÷èñëà.
TIMESTAMP[(Ì)]
Ìåòêà âðåìåíè. Ïîääåðæèâàåìûé äèàïàçîí: îò 1970-01-01 00:00:00 ïðèìåðíî äî 2037. MySQL îòîáðàæàåò çíà÷åíèÿ òèïà TIMESTAMP â ôîðìàòàõ (YY) YY-MM-DD HH:MM:SS, YY-MM-DD ÍÍ:ÌÌ:SS, (YY)YY-MM-DD èëè YY-MM-DD, â çàâèñèìîñòè îò çíà÷åíèÿ Ì: 14 (èëè ïðîïóùåíî), 12, 8 èëè á, íî ïîçâîëÿåò âàì çàäàâàòü çíà÷åíèÿ ñòîëáöàì TIMESTAMP, èñïîëüçóÿ ñòðîêè èëè ÷èñëà.
Ñòîëáåö TIMESTAMP ïîëåçåí äëÿ çàïèñè äàòû è âðåìåíè îïåðàöèè INSERT èëè UPDATE, ïîòîìó ÷òî îí áóäåò àâòîìàòè÷åñêè óñòàíîâëåí äëÿ äàòû è âðåìåíè ñàìîé ïîñëåäíåé îïåðàöèè, åñëè âû íå çàäàäèòå çíà÷åíèå ñàìîñòîÿòåëüíî. Âû ìîæåòå òàêæå óñòàíàâëèâàòü åãî ê òåêóùåé äàòå è âðåìåíè, íàçíà÷àÿ çíà÷å¬íèå NULL.
Òèï TIMESTAMP âñåãäà ñîõðàíÿåòñÿ â 4 áàéòàõ. Ïàðàìåòð Ì âîçäåéñòâóåò òîëüêî íà òî, êàê îòîáðàæàåòñÿ ñòîëáåö TIMESTAMP. Îáðàòèòå âíèìàíèå, ÷òî ñòîëáöû TIMESTAMP (X) ïðè X, ðàâíîì 8 èëè 14, ÿâëÿþòñÿ ÷èñëàìè, â òî âðåìÿ êàê äðóãèå ñòîëáöû TIMESTAMP (X) ïðåäñòàâëÿþò ñîáîé ñòðîêè!
TIME
Âðåìÿ. Ïîääåðæèâàåìûé äèàïàçîí: îò -838:59:59 äî 838:59:59. MySQL îòîáðàæàåò çíà÷åíèÿ òèïà TIME â ôîðìàòå HH:MM:SS, íî ïîçâîëÿåò âàì çàäàâàòü çíà÷åíèÿ ñòîëáöàì TIME, èñïîëüçóÿ ñòðîêè èëè ÷èñëà.
YEAR[(2|4)]
Ãîä ñ äâóìÿ èëè ÷åòûðüìÿ öèôðàìè (ïî óìîë÷àíèþ çàäàíî 4). Äîïóñòèìûå çíà÷åíèÿ: îò 1901 äî 2155, 0000 â ôîðìàòå ãîäà ñ 4 öèôðàìè è 1970-2069, åñëè âû èñïîëüçóåòå ôîðìàò ñ 2 öèôðàìè (70-69). MySQL îòîáðàæàþò çíà÷åíèÿ YEAR â ôîðìàòå YYYY, íî ïîçâîëÿåò âàì óêàçûâàòü çíà÷åíèÿ ñòîëáöàì òèïà YEAR, èñïîëüçóÿ ñòðîêè èëè ÷èñëà. Âïåðâûå òèï YEAR ïîÿâèëñÿ â MySQL âåðñèè 3.22.
[NATIONAL] CHAR(Ì) [BINARY]
Ñòðîêà ôèêñèðîâàííîé äëèíû, êîòîðàÿ âñåãäà äîïîëíÿåòñÿ ñïðàâà ïðîáåëàìè äî îïðåäåëåííîé äëèíû. Äèàïàçîí Ì îò 1 äî 255 ñèìâîëîâ. Õâîñòîâûå ïðîáåëû áóäóò óäàëåíû, êîãäà çíà÷åíèå èçâëåêàåòñÿ èç òàáëèöû. Ïåðåìåííûå òèïà CHAR ñîðòèðóþòñÿ è ñðàâíèâàþòñÿ áåç ó÷åòà ðåãèñòðà ñîãëàñíî çàäàííîìó ïî óìîë÷àíèþ íàáîðó ñèìâîëîâ, åñëè íå çàäàíî êëþ÷åâîå ñëîâî BINARY. Ïàðàìåòð NATIONAL CHAR (êîðîòêàÿ ôîðìà NCHAR) ïðåäñòàâëÿåò ñîáîé âçÿòûé èç ANSI SQL ñïîñîá îïðåäåëèòü, ÷òî ñòîëáåö CHAR äîëæåí èñïîëüçîâàòü çàäàííûé íàáîð ñèìâîëîâ CHARACTER. Ýòî çíà÷åíèå ïðèíÿòî ïî óìîë÷àíèþ â MySQL.
CHAR ÿâëÿåòñÿ ñîêðàùåíèåì äëÿ CHARACTER. MySQL ïîçâîëÿåò âàì ñîçäàâàòü ñòîëáåö òèïà CHAR(0). Ýòî ãëàâíûì îáðàçîì ïîëåçíî, êîãäà âû äîëæíû îáåñïå÷èòü ñîâìåñòèìîñòü ñ íåêîòîðûìè ñòàðûìè ïðèêëàäíûìè ïðîãðàììàìè, êîòîðûå çàâèñÿò îò ñóùåñòâîâàíèÿ ñòîëáöà, íî ôàêòè÷åñêè íå èñïîëüçóþò åãî çíà÷åíèå. Ýòî òàêæå î÷åíü óöîáíî, êîãäà âû íóæäàåòåñü â ñòîëáöå, êîòîðûé ìîæåò ïðèíèìàòü òîëüêî 2 çíà÷åíèÿ: CHAR(0), êîòîðûé íå îïðåäåëåí êàê NOT NULL, çàéìåò âñåãî ëèøü îäèí áèò è ìîæåò ïðèíèìàòü òîëüêî 2 çíà÷åíèÿ: NULL èëè «» (ïóñòàÿ ñòðîêà).
[NATIONAL] VARCHAR(Ì) [BINARY]
Ñòðîêà ïåðåìåííîé äëèíû (òàêæå èçâåñòíà êàê “ðåçèíîâàÿ ñòðîêà").
Êîíå÷íûå ïðîáåëû áóäóò àâòîìàòè÷åñêè óäàëåíû, êîãäà çíà÷åíèå ñîõðàíåíî (ýòî îòëè÷àåòñÿ îò ñïåöèôèêàöèé ANSI SQL). Äèàïàçîí Ì îò 1 äî 255 ñèìâîëîâ. Çíà÷åíèÿ òèïà VARCHAR ñîðòèðóþòñÿ è ñðàâíèâàþòñÿ áåç ó÷åòà ðåãèñòðà, ñîãëàñíî çàäàííîìó ïî óìîë÷àíèþ íàáîðó ñèìâîëîâ, åñëè íå çàäàíî êëþ÷åâîå ñëîâî BINARY. Òèï VARCHAR ÿâëÿåòñÿ ñîêðàùåíèåì äëÿ CHARACTER VARYING.
TINYBLOB è TINYTEXT
Ñòîëáöû òèïîâ TINYBLOB èëè TINYTEXT èìåþò ìàêñèìàëüíóþ äëèíó â 255 (2∧8-1) ñèìâîëîâ.
BLOB è TEXT
Ñòîëáöû BLOB èëè TEXT èìåþò ìàêñèìàëüíóþ äëèíó â 65535 (2∧16-1) ñèìâîëîâ.
MEDIUMBLOB è MEDIUMTEXT
Ñòîëáöû MEDIUMBLOB èëè MEDIUMTEXT èìåþò ìàêñèìàëüíóþ äëèíó â 16777215 (2∧24-1) ñèìâîëîâ.
LONGBLOB è LONGTEXT
Ñòîëáöû LONGBLOB èëè LONGTEXT èìåþò ìàêñèìàëüíóþ äëèíó â 4294967295 (2∧32-1) ñèìâîëîâ. Îáðàòèòå âíèìàíèå, ÷òî ïîñêîëüêó ïðîòîêîë êëèåíò-ñåðâåð èìååò â íàñòîÿùåå âðåìÿ îãðàíè÷åíèå â 16 ìåãàáàéò íà ïàêåò ñâÿçè, âû íå ìîæåòå èñïîëüçîâàòü âåñü äèàïàçîí ýòîãî òèïà.
ENUM("valuel",'value2',...)
Ïåðå÷èñëåíèå. Ñòðîêîâûé îáúåêò, êîòîðûé ìîæåò èìåòü òîëüêî îäíî çíà÷åíèå, âûáðàííîå èç ñïèñêà çíà÷åíèé valuel, value2, ..., NULL èëè ñïåöèàëüíîå çíà÷åíèå îøèáêè «». ENUM ìîæåò èìåòü ìàêñèìóì 65535 ðàçíûõ çíà÷åíèé.
SET("valuel",'value2',...)
Ìíîæåñòâî. Ñòðîêîâûé îáúåêò, êîòîðûé ìîæåò èìåòü íîëü èëè áîëüøå çíà÷åíèé, êàæäîå èç êîòîðûõ äîëæíî áûòü âûáðàíî èç ñïèñêà çíà÷åíèé valuel, value2, .... SET, ìîæåò âêëþ÷àòü ìàêñèìóì 64 ÷ëåíà.



