我想问下。我在SQL中,我如果不知道其中一张表的表名,但知道其的一个字段名,应该怎么查找?谢谢

结论:Oracle DBA 可以使用此语句。

语句:SELECT TABLE_NAME FROM COLS WHERE COLUMN_NAME = '字段名称'。

时间:不确定。

位置:Oracle数据库。

确切数字:不确定。

吐槽:SQL语法不正确,应该是ALL TABLES。

批评:不要滥用它。

sql怎么看字段长度

糟糕,检查 SQL 字段长度的方法实际上只有两种。

第一种方法是使用特殊库INFORMATION_SCHEMA。
该库是一个信息注册表。
表、字段、长度和宽度都记录在这里。
要检查字段的长度,请使用以下查询:
sql 选择COLUMN_NAME,CHARACTER_MAXIMUM_LENGTH INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '表名称' AND COLUMN_NAME = '要检查的字段名称';
如您所见,您需要输入两件事。
TABLE_NAME 是表名,COLUMN_NAME 是字段名。
填写完毕后,运行即可。
结果的CHARACTER_MAXIMUM_LENGTH是最大长度。
简陋。

第二种方法是使用SQL中包含的函数。
这种方法主要处理字符串类型。
例如,有两个函数称为 LENGTH() 或 CHAR_LENGTH()。
创建查询:
sql 选择长度(列名) FROM 表名;
这两个函数计算的长度以字符为单位,而不是字节。
例如,“ABC”是3 个字母,“中文”也是3 个字母。
字符数被计算。
如果是数字类型或日期和时间类型,这两个函数将不起作用,因为数字没有长度,而日期和时间取决于它们的格式,而不是它们的长度。

只有两种方法。
老实说,使用 INFORMATION_SCHEMA 更好,因为你可以检查各种字段信息。
内置函数仅限于字符串。
当时我不明白为什么我们需要区分字符和字节。
后来我查了一下,发现中文和英文字母占据了不同的位置。