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

sql怎么找另一个值

发布时间: 2022-05-18 04:24:26

‘壹’ 如何在一个sql数据库中搜索到特定值的记录

这样的话,给你一个思路,你先根据这个库,查找里面所有表名,然后再根据表名,查找字段名,然后再查找所有不是数字或者是二进制的字段进行搜索,当然这个需要多次循环,多次调用,肯定是很麻烦的!肯定得使用游标,虽然效率低,但是这个是唯一的一个办法:declare @tabName VARCHAR(40) declare @colName VARCHAR(40)DECLARE @sql nVARCHAR(2000)
set @sql = '';
DECLARE tabCursor CURSOR FOR sELECT name From sysobjects WHERE xtype = 'u' --查找库中所有的表OPEN tabCursorFETCH NEXT FROM tabCursor INTO @tabName
WHILE @@fetch_status = 0
BEGIN
-- SET @sql = 'UPDATE ' + @tabName + ' SET '
DECLARE colCursor CURSOR FOR Select Name FROM SysColumns Where id=Object_Id(@tabName) --查找表中所有的字段
OPEN colCursor
FETCH NEXT FROM colCursor INTO @colName
set @sql = ' select 1 from '+@tabName+ ' where '+ @colName +' like ''%10%'' '
WHILE @@fetch_status = 0
BEGIN
-- SET @sql = @sql + @colName + '=REPLACE(' +@colName+ ',''XX'',''''),'
set @sql += CHAR(10)+CHAR(13)+ ' select 1 from '+@tabName+ ' where '+ @colName +' like ''%10%'' '
FETCH NEXT FROM colCursor INTO @colName
END
-- SET @sql = LEFT(@sql,LEN(@sql)-1)
-- print @sql
EXEC(@sql)
CLOSE colCursor
DEALLOCATE colCursor
FETCH NEXT FROM tabCursor INTO @tabName
ENDCLOSE tabCursorDEALLOCATE tabCursor 此方法经过验证,但是需要你进行简单的修改!

‘贰’ sql 两个字段都是逗号隔开 怎么精确查找某个值

/*
你是这个意思:
wid=1 wname=weibo 查询结果是id=1
wid=2 wname=qq 查询结果是id=1
wid=2 wname=weibo 查询结果是id=3
*/
--先创建一个函数,用来拆分字段值
Create Function f_split1(@SourceSql Varchar(8000),@StrSeprate Varchar(2))
Returns @temp Table(id Int Identity(1,1), col Varchar(100))
As
begin
Declare @ch as Varchar(100)
Set @SourceSql=@SourceSql+@StrSeprate
While(@SourceSql<>'')
Begin
Set @ch=left(@SourceSql,Charindex(@StrSeprate,@SourceSql,1)-1)
Insert @temp(col) Values(@ch)
Set @SourceSql=Stuff(@SourceSql,1,Charindex(@StrSeprate,@SourceSql,1),'')
End
Return
End
Go

--以下是查询代码
Select * From (
Select T.id,A.col As Wid,B.col As WName From T
Cross Apply dbo.f_split1(wid,',') A
Cross Apply dbo.f_split1(wname,',') B
where A.id=B.id) S
Where Wid='2' And WName='qq'

--解释,把字段按逗号拆分后,按自增id关联起来,及wid的第一个值跟wname的第一个值关联,以后依次,然后用等号查询你要的值

‘叁’ 请问怎么用sql语句查找整个数据库里的某个数据

可用group by…having来实现。

可做如下测试:

1、创建表插入数据:

createtabletest
(idint,
namevarchar(10))
insertintotestvalues(1,'张三')
insertintotestvalues(2,'李四')
insertintotestvalues(3,'张三')
insertintotestvalues(4,'王五')
insertintotestvalues(5,'赵六')

其中name是张三的有两行,也就是重复行。

2、执行sql语句如下:

select*fromtestwherenamein
((*)>1)

结果如图:

‘肆’ sql中如何通过一个值查找对应的另一个值,sql语句写法

第一种写法:select a.kdID from kdinfo a, order b where a.OrdID = b.OrdID and b.OrdID = '你想查的订单号'
第二种写法:select a.kdID from kdinfo a inner join order b on a.OrdID = b.OrdID where b.OrdID = '你想查的订单号'

‘伍’ sql如何同时查找两个值

如果你想找shenfenzheng为某值并且number为某值的记录就用这个
sql = "select * from zyserch where shenfenzheng='" & shenfenzheng & "' and number='"& number &"'"
如果你想找shenfenzheng为某值 或者 number为某值的记录就将上面的and改为or
如果number这个字段是数字型的,就要将number='"& number &"'"
改为number="& number也就是去掉“'”

‘陆’ sql怎么根据一个列查找另一个列对应数据

需要用连接查询来处理。 如有以下2张表: 查询2张表id和name字段内容完全相同的内容,可用如下语句: select a.* from test a,test1 b where a.id=b.id and a.name=b.name;结果: 说明,两表连接where条件要写上关联条件,因为提问是两个字段完..

‘柒’ sql如何查找一个表里的某一个值

这样你要查系统表,获取所有表和字段名,拼接成带条件的查询语句,利用工具批量执行,找出有返回记录的sql即可。

‘捌’ 使用SQL命令在数据库中查找指定的值

SQL没有from all这样的写法的,要的话只能写:

DECLARE c_cursor CURSOR FOR
(
select a.name From sysobjects a
inner join syscolumns b
on (a.id=b.id)
where a.xtype='U' and b.name=‘产品编号'
)
---通过字段名查询表名
DECLARE @tablename varchar(100)
declare @sql varchar(max)
OPEN c_cursor
FETCH NEXT FROM c_cursor
WHILE @@FETCH_STATUS = 0
BEGIN
set @sql='select * from ' + @tablename + ' 产品编号=1314'
exec (@sql)
FETCH NEXT FROM c_cursor into @tablename
END
CLOSE c_cursor
DEALLOCATE c_cursor
go

‘玖’ SQL在知道表名但是不知道列名的情况下如何全局搜索某一个值

不可以
不过可以根据字段查询表名
然后在查询

select a.name as TableName,b.name as ColName From sysobjects a
inner join syscolumns b on (a.id=b.id)
where a.xtype='U' and b.name=字段名

这里面的是根据字段名来查询的,如果要想根据字段值来查询,需要在此基础上用游标来查了

‘拾’ sql两表联合查询“根据这两个字段值相同 查找其他字段值”怎么做

通过在关联的时候,强制指定排序规则,来避免冲突。

SELECT
a.file1 as a1,
b.file1 as b1
FROM
a JOIN b
ON ( a.file1 = b.file1 COLLATE Chinese_PRC_CS_AS)

SQL语言,是结构化查询语言(Structured Query Language)的简称。SQL语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。

SQL语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的结构化查询语言作为数据输入与管理的接口。SQL语言语句可以嵌套,这使他具有极大的灵活性和强大的功能。