当前位置:首页 » 编程语言 » sql查找列名
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql查找列名

发布时间: 2022-04-27 00:19:06

sql如何在一个数据库中查询已知列名的所在表

OBJECT_ID : 返回数据库对象标识号
例如:
use master
Select Object_Id(N'pubs..authors') //查看pubs数据库里的authors表的object_id对象标识号。

OBJECTPROPERTY : 返回当前数据库中对象的有关信息
语法 : OBJECTPROPERTY ( id , property )

例如:
OBJECTPROPERTY (object_id(N'authors') , N'ISTABLE') = 1

select * from dbo.sysobjects where Object_Id(N'myTable') AND OBJECTPROPERTY(id, N'IsTable') = 1
OBJECT_ID:返回数据库对象标识号。N是显式的将非unicode字符转成unicode字符,它来自 SQL-92 标准中的 National(Unicode)数据类型,用于扩展和标准化,在这里可以不用,写作object_id(PerPersonData)。

OBJECTPROPERTY:返回当前数据库中对象的有关信息。1表“真”。同样可以写成OBJECTPROPERTY(id, sUserTable) = 1。

整条语句的意思是判断数据库里有没有存在PerPersonData这样一张表。

整条语句可以简写成:
if exists (select * from sysobjects where objectproperty(object_id('PerPersonData'),'istable') = 1)

判断myTalbe对象是否是一个表。
If exists (select * from dbo.sysObjects
where id = Object_Id(N'myTable') and ObjectProperty(id, N'IsUserTable') = 1)

判断myProc对象是否是一个存储过程。
If exists (select * from dbo.sysObjects
where id = Object_Id(N'myProc') and ObjectProperty(id, N'IsProcere') = 1)

判断myFun对象是否是一个自定义、标量值函数。
If exists (select * from dbo.sysObjects
where id = Object_Id(N'myFun') and ObjectProperty(id, N'IsScalarFunction') = 1)

判断myFun对象是否是一个表值函数。
If exists (select * from dbo.sysObjects
where id = Object_Id(N'myFun') and ObjectProperty(id, N'IsTableFunction') = 1)

其他更多ObjectProperty属性的 property 值参考
http://technet.microsoft.com/zh-cn/library/ms176105.aspx

⑵ sql 查询 一个表中某几列数据

sql查询一个表中某几列数据语法:

1、SELECT 列名称1、列名称2.....列名称n FROM 表名称 WHERE 列 运算符 值;

2、SELECT * from 表名称 where 列 运算符 值(列 运算符 值,这个可以是多个,中间用and隔开)。

解析:使用sql查询时,作为查询的筛选限制条件,只需要对有限制要求的字段使用where进行限制即可,无需对非限制要求的字段进行特别限制。

所以你的语句可以修改为"select * from test1 where id=‘2’;"就可以了。其中,你原语句中的name=全部和age=全部,属于多余的,如果不对name和age字段做任何限制的话,sql本身就是会查询全部name和age,而无需你另外加设条件。

再比如你这样写:“select * from test1;”在不加任何where条件的情况下,这个sql查询本身就是查询全部数据。而当加入id='2'之后,就限制了只能返回id值是2的某一条或者多条数据。

通过几个例子来加深一下对上表各查询条件使用的理解:

1、查询计算机科学系全体学生的名单;

SELECT Sname FROM StudentWHERE Sdept='CS';

2、查询所有年龄在20岁以下的学生姓名及其年龄;

SELECT Sname,Sage FROM StudentWHERE Sage<20;

3、查询考试成绩不合格的学生的学号;

SELECT DISTINCT Sno FROM SCWHERE Grade<60;

4、查询年龄在20~23岁之间的学生的姓名、系别和年龄;

SELECT Sname,Sdept,Sage FROM Student WHERE Sage BETWEEN 20 AND 23;

5、查询年龄在20~23岁之间的学生的姓名、系别和年龄;

SELECT Sname,Sdept,Sage FROM StudentWHERE Sage NOT BETWEEN 20 AND 23;

6、查询计算机科学系(CS)、数学系(MA)和信息系(IS)学生的姓名、系别和年龄。

SELECT Sname,Ssex FROM Student WHERE Sdept IN('CS','MA','IS')。

⑶ sql语句怎么查询指定表的列名

查询dba_tab_columns
如:
select
column_name
from
dba_tab_columns
where
owner=upper('xxx')
and
table_name=upper('yyy')
;
如果表名的区分大小写的话,注意表名用双引号,如:
select
column_name
from
dba_tab_columns
where
owner=upper('xxx')
and
table_name="mytable"
;
亲测无误。

⑷ SQL 如何根据指定值获取列名

insert into 表(T1)
select
case when 字段1 = 1 then '字段1,' else '' end +
case when 字段2 = 1 then '字段2,' else '' end +
case when 字段3 = 1 then '字段3,' else '' end +
...
case when 字段20 = 1 then '字段20,' else '' end
as T1
from 表

⑸ SQL 查询列名

很难,一个sql完成不了,给你一个思路吧,
从系统表中根据数据表明读取列名,然后循环根据列名匹配内容值
这样很麻烦

⑹ SQL数据库,如何查询数据库内含有某一列(某字段,如name)的所有表

SQL数据库,查询包含列(字段,如名称)的数据库中的所有表的步骤如下:需要准备的材料是:计算机,sql finder。

1,首先,打开sql查询器并连接到相应的数据连接,例如测试库。

⑺ 如何搜索SQL中的列名数据

朋友你好:
编个id,行号
select *
from (表名.nlndex)
where 表名.id=191318

用update

⑻ 如何用sql语句查询emp表的列名

select t.*,c.COMMENTS from user_tab_columns t,user_col_comments c
where t.table_name='EMP'

⑼ sql查找包含某些字符的列

1、首先创建模拟数据源表。

⑽ mysql 如何用sql语句查询表的所有列名

select COLUMN_NAME from information_schema.columns where table_name='b'
select count(*) from information_schema.COLUMNS WHERE TABLE_SCHEMA='a' and table_name=‘b’
a是库名,b是表明