当只知道字段名,而不知其属于哪个表时,可通过以下方法先获得其所属的表,再查询该字段值:
oracle数据库
select table_name from user_tab_columns where column_name='字段名'
sqlserver数据库
select cobject_id,cname,oobject_id,oname from syscolumns c
left join sysobjects o
on cobject_id=oobject_id
where otype='U' and cname='字段名'
说明:
如果此字段名在多张表中存在,则需要自行判断要查询的表。
sql字段有逗号隔开,数据取值的方法。
如下参考:
1查询数据库表的所有字段,直接使用select语句,如下图。
2查询数据库表部分的字段,可以使用select字段命令,从数据库表中选择字段名度。
3根据查询的条件,在where之后使用条件,从数据库表中选择字段名所在的条件。
4使用distinct命令查询数据库字段,以记录未重复的结果,如下图所示。
5查询数据库表数据之前有多少条,可以使用top命令,从数据库表中选择号。
6查询数据库表有时为了区分字段,需要回答字段名,可以用as,从数据库表中选择字段名作为字段名。
--建立测试表
tableA
(type=“书籍”的不足100条),tableB
(type=“书籍”的多于100条)
create
table
tableA(id
int
identity(1,1),type
nvarchar(8))
create
table
tableB(id
int
identity(1,1),type
nvarchar(8))
go
--向表tableA循环插入测试语句
declare
@a
int
set
@a=0
while
(@a<120)
begin
if
@a<20
insert
into
tableA(type)values('报刊')--20本是'报刊'
else
if
@a<40
insert
into
tableA(type)values('光盘')--20本是'光盘'
else
if
@a<60
insert
into
tableA(type)values('漫画')--20本是'漫画'
else
if
@a<80
insert
into
tableA(type)values('书籍')--20本是'书籍'
else
if
@a<100
insert
into
tableA(type)values('其它')--20本是'其它'
else
insert
into
tableA(type)values('杂志')--20本是'杂志'
set
@a=@a+1
end
go
--向表tableB循环插入测试语句
declare
@b
int
set
@b=0
while
(@b<120)
begin
insert
into
tableB(type)values('书籍')--全部是'书籍'
set
@b=@b+1
end
go
--查看表tableA,tableB中的数据
select
from
tableA
select
from
tableB
/查看你要看的的数据/
--方法一,用
charindex
函数(当然函数里面的顺序可以根据自己要求改变)
select
top
100
from
tableA
order
by
charindex(type,'书籍报刊漫画杂志光盘其它')
--方法二,如果在不想用函数可以同一楼一样用下面的方法
select
top
100
from
tableA
order
by
case
when
type='书籍'
then
1
when
type='报刊'
then
2
else
3
end
--tableB表同上
--查看完后删除测试表
drop
table
tableA
drop
table
tableB
数据我已经测试过了,没问题
最后求赏~~
被设置为"自动编号"数据类型的字段,每张表只允许有一个此类型字段,其取值由系统自动确定,其数字值随着记录的新增而加大,不会有重复,用户无法修改。
在表的设计视图中,每一个字段都有设计类型,Access允许九种数据类型:文本、备注、数值、日期/时间、货币、自动编号、是/否、OLE对象、超级链接、查询向导。
扩展资料:
Access数据库字段类型,具体如下:
1、文本型(Text):用于输入文本或文本与数字相结合的数据,最长为255个字符(字节),默认值是50。在Access中,每一个汉字和所有特殊字符(包括中文标点符号)都算作一个字符。
2、货币型(Currency):用来存储货币值,占8个字节,在计算中禁止四舍五入。
3、数字型(Number):用于可以进行数值计算的数据,但货币除外。数字型字段按字段大小分字节、整型、长整型、单精度型、双精度型、同步复制ID和小数7种情形,分别占1、2、4、4、8、16和12个字节。
4、日期/时间型(Date/Time):用于存储日期和(或)时间值,占8个字节。
5、自动编号型(AutoNumber):用于在添加记录时自动插入的序号(每次递增1或随机数),默认是长整型,也可以改为同步复制ID。自动编号不能更新。
6、是/否型(Yes/No):用于表示逻辑值(是/否,真/假),占1个字节。
7、备注型(Memo):用于长文本或长文本与数字(大于255个字符)的结合,最长为65535个字符。
8、OLE对象型(OLE Object):用于使用OLE协议在其它程序中创建的OLE对象(如Word文档、Excel电子表格、、声音等),最多存储1GB(受磁盘空间限制)。
9、超级链接型(Hyper Link):用于存放超级链接地址,最多存储64000个字符。
10、查阅向导型(Lockup Wizard):让用户通过组合框或列表框选择来自其它表或值列表的值,实际的字段类型和长度取决于数据的来源。
查询 MySql 数据库中所有表名:
select table_name from information_schematables where table_schema='当前数据库名' and table_type='base table';
查询 MySql 指定数据库中指定表的所有字段名:select column_name from information_schemacolumns where table_schema='当前数据库名' and table_name='指定的表名';
扩展资料查询所有数据库
show databases;
查询指定数据库中所有表名
select table_name from information_schematables where table_schema='database_name' and table_type='base table';
查询指定表中的所有字段名
查询指定表中的所有字段名和字段类型
select column_name,data_type from information_schemacolumns where table_schema='database_name' and table_name='table_name';
以上就是关于请问怎么在数据库所有表中查找一个字段的值全部的内容,包括:请问怎么在数据库所有表中查找一个字段的值、sql字段里有逗号隔开的数据,怎么取值、数据库取值的sql语句等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)