在使用存儲過程中,有用到in
1:首先增加一個 split 函數
ALTER FUNCTION [dbo].[Split] --用來在存儲過程中使用in的函數,這個函數的作用呢,就是把你輸入的字符按一定的分隔符分開,并放在一個表里的一列里,然后返回。
( @c VARCHAR(300) , @split VARCHAR(50) ) RETURNS @t TABLE ( col VARCHAR(50) ) AS BEGIN WHILE ( CHARINDEX(@split, @c) < > 0 ) BEGIN INSERT @t( col ) VALUES ( SUBSTRING(@c, 1, CHARINDEX(@split, @c) - 1) ) SET @c = STUFF(@c, 1, CHARINDEX(@split, @c), '') END INSERT @t( col ) VALUES ( @c ) RETURN END
2:在存儲過程中,這樣寫
create proc 查詢公司員工下現有公司(@guwen varchar(200)) as --用途:查詢員工下所有的公司(目前還在我公司旗下的) --參數為 'Queenie,Thomas,Cat,Sweet,Rain' --exec 查詢公司員工下現有公司 'Queenie,Thomas,Cat,Sweet,Rain' begin SELECT a.id, a.COCN AS 公司中文名, a.COEN AS 公司英文名, a.CODATE AS 公司成立時間, b.cTypeName AS 公司類型, c.ename AS 顧問, a.F1 AS 股東一中文姓名, a.F1SUR AS 股東一英文姓, a.F1OTHER AS 股東一英文名, a.CMAN AS 聯系人, a.Sex AS 聯系人性別, a.CMAIL AS 聯系人email, a.CTEL 聯系人電話 ,a.CMOB AS 聯系人手機 FROM List a INNER JOIN alz_companyType b ON a.companyTypeId = b.cTypeId INNER JOIN alz_guwen c ON a.GW = c.guwenid WHERE (c.ename IN (select * from Split(@guwen,',')) ) AND (a.ATDATEState < > '5') ORDER BY a.CODATE end
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
