2014-09-24 96 views
0

我使用的MySQL我想名字資本和剩餘的字符的第一個字母小寫我使用的查詢是查詢給錯誤的答案

select UPPER(LEFT(FirstName,1))+LOWER(SUBSTRING(FirstName,2,LENGTH(FirstName))) FirstName from colliers; 

這給答案0,但它完全在SQL服務器。 。

+1

http://stackoverflow.com/questions/ 4263272 /大寫先信的MySQL – 2014-09-24 15:17:15

回答

1

你必須使用concat()。 「加號」連接在MySQL中不起作用。你最終可能會像這樣的東西:

select CONCAT(UPPER(LEFT(FirstName,1)), LOWER(SUBSTRING(FirstName,2,LENGTH(FirstName)))) FirstName from colliers; 

通過你不要在SUBSTRING()函數調用需要LENGTH(FirstName)的方式。當第三個參數被省略時SUBSTRING()假設你想要其餘的字符串。

1

你必須使用CONCAT(),而不是+

SELECT CONCAT(UPPER(LEFT(FirstName,1)),LOWER(SUBSTRING(FirstName,2,LENGTH(FirstName)))) FirstName from colliers 
0

只是另一種解決問題的方法!

我會使用的concat(),UCASE()/上部(),LCASE()/下部(),中()/串()

SELECT CONCAT (
     upper(mid(Firstname, 1, 1)) 
     ,lower(mid(Firstname, 2)) 
     ) 
FROM colliers;