使用CONCAT函數從MySQL追加或預先加載數據。也適用於標準的SQL。
追加
$CopyMarket = "INSERT INTO Markets (MarketName, Size)
(SELECT CONCAT(MarketName, '-Copy'), Size)
FROM Markets
WHERE MarketID=$CopyID"; // Field-Copy
前置
$CopyMarket = "INSERT INTO Markets (MarketName, Size)
(SELECT CONCAT('Copy-', MarketName), Size)
FROM Markets
WHERE MarketID=$CopyID"; // Copy-Field
從MySQL documentation:
返回從串聯參數產生的字符串。可能有一個或多個參數。如果所有參數都是非二進制字符串,則結果是非二進制字符串。如果參數包含任何二進制字符串,則結果是二進制字符串。一個數字參數被轉換爲它的等價二進制字符串形式;如果你想避免這種情況,你可以使用顯式類型轉換,如下面的例子:
SELECT CONCAT(CAST(int_col AS CHAR), char_col);
CONCAT()返回NULL,如果任何一個參數爲NULL。
mysql> SELECT CONCAT('My', 'S', 'QL');
-> 'MySQL'
mysql> SELECT CONCAT('My', NULL, 'QL');
-> NULL
mysql> SELECT CONCAT(14.3);
-> '14.3'
對於引用的字符串,級聯可以通過將字符串彼此相鄰進行:
mysql> SELECT 'My' 'S' 'QL';
-> 'MySQL'
真棒!非常感謝你。完美工作。 – sneako 2012-03-28 22:35:57
@sneako您的歡迎。 – 2012-03-29 13:01:29