怎么取字符串问题

tigerlhp 2011-08-19 11:20:15
今收一文本,全是名字: 张三 李四 麻五 黄六 陈七 ... 共一百多个
要求插入数据到我的某表中,表中有个字段要输入呢称,取个不同的名字。
该怎么写 SQL 语句啊

...全文
62 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
一缕青烟 2011-08-19
  • 打赏
  • 举报
回复



create table #tb(id int identity(1,1),col varchar(40))
insert into #tb
select replace('张三 李四 麻五 黄六 陈七',' ',',')
go


select col,identity(int,1,1) as myid into #tb3 from(
select a.id,substring(a.col,b.number,charindex(',',a.col+',',b.number)-b.number) as col
from #tb a,master..spt_values b
where b.[type] = 'p' and b.number between 1 and len(a.col)
and substring(','+a.col,b.number,1) = ',') a

select * from #tb3



一缕青烟 2011-08-19
  • 打赏
  • 举报
回复
select replace('张三 李四 麻五 黄六 陈七',' ',',')
再行转列,插入临时表。
再用临时表数据,更新你的昵称。
--小F-- 2011-08-19
  • 打赏
  • 举报
回复
用BULK INSERT
--小F-- 2011-08-19
  • 打赏
  • 举报
回复
意思是把TXT的东西导入 SQL SERVER?
tigerlhp 2011-08-19
  • 打赏
  • 举报
回复
帐号数据表 accounts 字段: 帐号-acc, 密码-pwd, 呢称-name

现要自动注册 100 个帐号,即要向 accounts 插入100条语句,但是又不能让人一看呢称就发现有假了。

今有 100 个事先取好的名字,在 TXT 文本里面。

我要在 SQL 2005 的新建查询里面 怎么写 SQL 语句来插入这 100 个帐号到数据表 accounts 中去?

--小F-- 2011-08-19
  • 打赏
  • 举报
回复
汉字首字母查询处理用户定义函数
CREATE FUNCTION f_GetPY(@str nvarchar(4000))
RETURNS nvarchar(4000)
AS
BEGIN
DECLARE @py TABLE(
ch char(1),
hz1 nchar(1) COLLATE Chinese_PRC_CS_AS_KS_WS,
hz2 nchar(1) COLLATE Chinese_PRC_CS_AS_KS_WS)
INSERT @py SELECT 'A',N'吖',N'鏊'
UNION ALL SELECT 'B',N'八',N'簿'
UNION ALL SELECT 'C',N'嚓',N'错'
UNION ALL SELECT 'D',N'哒',N'跺'
UNION ALL SELECT 'E',N'屙',N'贰'
UNION ALL SELECT 'F',N'发',N'馥'
UNION ALL SELECT 'G',N'旮',N'过'
UNION ALL SELECT 'H',N'铪',N'蠖'
UNION ALL SELECT 'J',N'丌',N'竣'
UNION ALL SELECT 'K',N'咔',N'廓'
UNION ALL SELECT 'L',N'垃',N'雒'
UNION ALL SELECT 'M',N'妈',N'穆'
UNION ALL SELECT 'N',N'拿',N'糯'
UNION ALL SELECT 'O',N'噢',N'沤'
UNION ALL SELECT 'P',N'趴',N'曝'
UNION ALL SELECT 'Q',N'七',N'群'
UNION ALL SELECT 'R',N'蚺',N'箬'
UNION ALL SELECT 'S',N'仨',N'锁'
UNION ALL SELECT 'T',N'他',N'箨'
UNION ALL SELECT 'W',N'哇',N'鋈'
UNION ALL SELECT 'X',N'夕',N'蕈'
UNION ALL SELECT 'Y',N'丫',N'蕴'
UNION ALL SELECT 'Z',N'匝',N'做'
DECLARE @i int
SET @i=PATINDEX('%[吖-做]%' COLLATE Chinese_PRC_CS_AS_KS_WS,@str)
WHILE @i>0
SELECT @str=REPLACE(@str,SUBSTRING(@str,@i,1),ch)
,@i=PATINDEX('%[吖-做]%' COLLATE Chinese_PRC_CS_AS_KS_WS,@str)
FROM @py
WHERE SUBSTRING(@str,@i,1) BETWEEN hz1 AND hz2
RETURN(@str)
END
GO
--小F-- 2011-08-19
  • 打赏
  • 举报
回复
可以取拼音码不??还是取什么?
geniuswjt 2011-08-19
  • 打赏
  • 举报
回复
试下叶子的取汉字首字母?
http://blog.csdn.net/maco_wang/article/details/6260301
mdq001 2011-08-19
  • 打赏
  • 举报
回复
表达不清。。。不知道你要干什么

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧