2013-03-12 78 views
5

我需要知道如何獲得特定列的最大尺寸在MySQL中,該表是獲得允許在列的最大長度,MySQL的

turno:

CREATE TABLE `turno` ( 
`idTurno` tinyint(4) NOT NULL, 
`nombreTurno` varchar(20) COLLATE utf8_spanish2_ci NOT NULL, 
`horaInicio` tinyint(4) NOT NULL, 
`horafin` tinyint(4) NOT NULL, 
`valorTurno` int(11) NOT NULL, 
PRIMARY KEY (`idTurno`)) 
ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci 

列:

`nombreTurno` varchar(20) COLLATE utf8_spanish2_ci NOT NULL 

我應該得到:

20 

即時得到:

NULL 

查詢:

SELECT MAX(LENGTH(nombreTurno)) AS maxl 
FROM turno 

希望你能幫助我,謝謝

+0

你在你的桌子haveany記錄? – 2013-03-12 17:09:28

+0

不,我沒有任何記錄,我需要的值是關於表格的結構。 – user2132046 2013-03-12 17:10:36

回答

12
select COLUMN_NAME, CHARACTER_MAXIMUM_LENGTH 
from information_schema.columns 
where table_schema = DATABASE() AND -- name of your database 
     table_name = 'turno' AND  -- name of your table 
     COLUMN_NAME = 'nombreTurno'  -- name of the column 
0

該查詢返回你的數據庫的當前記錄的最大長度。

我想你沒有任何記錄,所以它返回null。

+0

這不是他要問的。他希望字段的最大可能長度(應該是20),而不是字段中行中包含的最大值。 – dnagirl 2013-03-12 17:18:39

+0

我知道,我只是想解釋爲什麼他會得到這個「空」價值。 你可以有你的領域的一些細節,也許這將有助於更好 SHOW FIELDS FROM tableName WHERE Field ='yourField' – 2013-03-12 17:21:22

相關問題