CREATE PROCEDURE proname @mobile VARCHAR(50), --这个传入已经截取前几位的号码 @ret INT OUTPUT --传出是否有一样的,不知道楼主到底要做什么,传出你自己需要的东西 AS BEGIN SET @ret=0 select * into #temp from a declare @id INT DECLARE @count INT SELECT @count=COUNT(*) FROM #temp WHILE @count> 0 BEGIN select top 1 @id=id FROM #temp IF EXISTS (SELECT TOP 1 * FROM #temp WHERE id=@id AND LEFT(mobile,5)=@mobile )--我先设取的是前面5位 BEGIN SET @ret=1--楼主也可以改成获取id BREAK END ELSE BEGIN set @count=@count-1 DELETE FROM #temp WHERE id=@id CONTINUE END
END END GO 我没测试过,不知道里面有没有错
我的A表是给商品定一个规则,如果符合就把textbox里面的号码插入另一个表,在进行第二条判断
如果是这样,我写的那个把break那段去掉就好了啊
CREATE PROCEDURE proname @mobile VARCHAR(50), --这个传入已经截取前几位的号码 @ret INT OUTPUT --传出是否有一样的,不知道楼主到底要做什么,传出你自己需要的东西 AS BEGIN SET @ret=0 select * into #temp from a declare @id INT DECLARE @count INT SELECT @count=COUNT(*) FROM #temp WHILE @count> 0 BEGIN select top 1 @id=id FROM #temp IF EXISTS (SELECT TOP 1 * FROM #temp WHERE id=@id AND LEFT(mobile,5)=@mobile )--我先设取的是前面5位 BEGIN --这里写插入另一个表的 END
string sql="select * from Table where Id like '%'"+this.TextBox1.Text+"'%'";
我是要先判断textbox里面的号码前几位是否等于A表的第一条数据,
CREATE PROCEDURE proname
@mobile VARCHAR(50), --这个传入已经截取前几位的号码
@ret INT OUTPUT --传出是否有一样的,不知道楼主到底要做什么,传出你自己需要的东西
AS
BEGIN
SET @ret=0
select * into #temp from a
declare @id INT
DECLARE @count INT
SELECT @count=COUNT(*) FROM #temp
WHILE @count> 0
BEGIN
select top 1 @id=id FROM #temp
IF EXISTS (SELECT TOP 1 * FROM #temp WHERE id=@id AND LEFT(mobile,5)=@mobile )--我先设取的是前面5位
BEGIN
SET @ret=1--楼主也可以改成获取id
BREAK
END
ELSE
BEGIN
set @count=@count-1
DELETE FROM #temp WHERE id=@id
CONTINUE
END
END
END
GO
我没测试过,不知道里面有没有错
CREATE PROCEDURE proname
@mobile VARCHAR(50), --这个传入已经截取前几位的号码
@ret INT OUTPUT --传出是否有一样的,不知道楼主到底要做什么,传出你自己需要的东西
AS
BEGIN
SET @ret=0
select * into #temp from a
declare @id INT
DECLARE @count INT
SELECT @count=COUNT(*) FROM #temp
WHILE @count> 0
BEGIN
select top 1 @id=id FROM #temp
IF EXISTS (SELECT TOP 1 * FROM #temp WHERE id=@id AND LEFT(mobile,5)=@mobile )--我先设取的是前面5位
BEGIN
--这里写插入另一个表的
END
END
END
GO