mysql查询“SHOW COLUMNS FROM table like'colmunname'”:问题

时间:2014-07-31 08:03:39

标签: mysql sql

我对SHOW COLUMNS FROM table like 'column name'"有疑问。 我已经尝试了一些测试,它似乎与“column name='column'

类似

但是,我只是想确认一下 非常感谢你。

另外,我想说,为什么我不能使用SHOW COLUMNS FROM table = 'columnname'

4 个答案:

答案 0 :(得分:14)

更像是

WHERE column_name LIKE 'column name'

由于它使用LIKE,您可以在参数中添加通配符模式,例如

SHOW COLUMNS FROM table LIKE '%id'

将找到以id结尾的所有列。

如果没有通配符,则LIKE相当于=

如果您不想使用LIKE,可以使用WHERE

SHOW COLUMNS FROM table WHERE field = 'column name';

SHOW COLUMNS输出中,field列包含列名称。 WHERE子句还允许测试其他属性,例如

SHOW COLUMNS FROM table WHERE type LIKE 'varchar%'

会找到所有VARCHAR列。

答案 1 :(得分:0)

SHOW ... LIKE的行为类似于在常见查询的WHERE子句中使用LIKE运算符:

  

SHOW COLUMNS Syntax

     

显示[FULL] COLUMNS {FROM | IN} tbl_name [{FROM | IN} db_name]       [喜欢'模式' | WHERE expr]

     

SHOW COLUMNS显示有关给定表中列的信息。它也适用于视图。 喜欢   子句(如果存在)指示要匹配的列名称。 WHERE   可以使用更通用的条件来选择行,如   在第21.32节“扩展显示声明”中进行了讨论。

我的重点。

答案 2 :(得分:0)

用于获取精确匹配的位置,使用通配符来获取更广泛的列。

SHOW COLUMNS FROM table like 'my%";

以上内容将找到以 my 开头的所有列。

与where子句一样,您不能使用通配符,只会返回完全匹配。 显然,您可以在其他情况下使用between><等处,这样可以提供更广泛的范围,但仍然不允许您使用任何通配符。

答案 3 :(得分:0)

也许这个: 显示来自账户的列LIKE'id'