2010-07-20 120 views
20

我在MySQL數據庫中有一個表,我正在運行簡單的SELECT查詢(用於快速診斷/分析 - 因爲我沒有在服務器上運行phpmyadmin - for安全原因)。如何截斷在MySQL查詢中爲列返回的文本

我希望能夠截斷使用像這樣返回的數據:

select id, LEFT(full_name, 32), age FROM user 

其中用戶是包含列ID,FULL_NAME和年齡

我嘗試了上面的語句表並沒有奏效。任何人都知道如何做到這一點?

[編輯]

對不起,我說忽略了最低的工作,我的意思是簡單地MySQL的返回字符串「LEFT(FULL_NAME,32)」作爲一個別名的列「FULL_NAME」和輸出字段值 - 在這種情況下,可以長達256個字符。

+2

它以什麼方式不起作用?你得到了什麼結果,你期望得到什麼?你需要設置一個別名選擇ID,LEFT(full_name,32)作爲full_name,age FROM用戶訪問你的代碼嗎? – 2010-07-20 13:55:09

回答

28
select id, SUBSTRING(full_name,1, 32), age FROM user 

引用mysql.com

對於所有形式的SUBSTRING(),在字符串中的第一個字符的位置從該子是要被提取被算作1

+0

正如Mark Ba​​ker在上面的評論中指出的那樣,SUBSTRING上的別名將是一個好主意 – 2010-07-20 14:10:32

+1

有關'SUBSTRING'的更多詳細信息:http://www.1keydata.com/sql/sql-substring.html – Julien 2013-03-07 16:24:41

1
select id, SUBSTRING(full_name,1, 32), age FROM user