2014-02-01 2 views
0

Я читал о типах данных CHAR и VARCHAR в руководстве MySql и наткнулся на кусок кода, который я не понимал:MySQL функция CONCAT, без выбора столбцов

mysql> CREATE TABLE vc (v VARCHAR(4), c CHAR(4)); 
Query OK, 0 rows affected (0.01 sec) 

mysql> INSERT INTO vc VALUES ('ab ', 'ab '); 
Query OK, 1 row affected (0.00 sec) 

mysql> SELECT CONCAT('(', v, ')'), CONCAT('(', c, ')') FROM vc; 
+---------------------+---------------------+ 
| CONCAT('(', v, ')') | CONCAT('(', c, ')') | 
+---------------------+---------------------+ 
| (ab)    | (ab)    | 
+---------------------+---------------------+ 

CONCAT описание функции довольно simple:

Возвращает строку, которая возникает в результате конкатенации аргументов.

mysql> SELECT CONCAT('My', 'S', 'QL'); 
     -> 'MySQL' 

Я до сих пор не понимаю, как SELECT CONCAT('(', v, ')'), CONCAT('(', c, ')') FROM vc; результаты в выходной таблице выше. Нет выбора столбцов из того, что я вижу.

+0

'v' и' c' - это имена столбцов в таблице. –

ответ

2

В concat любой параметр может быть строкой или именем столбца. Итак:

SELECT CONCAT('(', v, ')'), CONCAT('(', c, ')') FROM vc; 

использует столбец v и столбец c значения для создания строки.

Смежные вопросы