麻烦帮我写一条SQL语句 - Oracle / 基础和管理
在emis.answerlib_1表中,由于失误,将列answer 里面的很多数据变成这样
Question_ID Answer
1061 abcdabcd
1062 abdabd
就是数据重复了 我想把它变成abcd、abd去除每一列里面重复的数据
update emis.answerlib_1 a set a.answer=( select substr(answer,1,length(answer)/2) from emis.answerlib_1 where Question_ID=a.Question_ID);
提示无法更新(emis.answerlib_1.answer)为NULL
而且并不是每一条数据都错了...只有一部分数据是
列1:Question_ID 列2:Answer
1061 abcdabcd
1062 abdabd
不会吧
SQL> create table my(id number,name varchar2(10));
Table created
SQL> insert into my values(1,'abcdabcd');
1 row inserted
SQL> insert into my values(2,'abcabc');
1 row inserted
SQL> commit;
Commit complete
SQL> update my a set a.name=(select substr(name,1,length(name)/2) from my where id=a.id);
2 rows updated
SQL> select * from my;
ID NAME
---------- ----------
1 abcd
2 abc
SQL>
哦 我明白了 ,这样的话 可能你要写一个函数去拆分你的Answer 字段,判断他是否重复,然后再截取
真的不行 还是那个错 你插入一条没有重复的数据试试啊!
是的 我要的就是那个结果...
现在比较忙 在处理一个异常
相关问答:
执行的顺序:
1)文件浏览框(选择文件使用)
选择好文件后
点击一个导入按钮的时候 ,把上面上传框里的csv文件以一个ID为文件名,上传到**/**文件夹下
2)读取这个文件夹下的csv的文件,转换成sql
3 ......
可能因为工作的原因 接触数据库这块比较少,之前都是做程序这块,数据库这块都有专门的人来做 分工都很明细 所以对数据库这一块完全不了解。前段时间 去面试了几家公司 几乎都是在数据库这块挂掉的 连个简单的SQ ......
现在有两张表:文章主表A(articleId,articleTitle),文章评论表B(commentId,articleId,commentTitle)
现在我想实现这样的功能:列出文章列表,其中每篇文章标题下面列出此文章的前2个文章评论,请问sql语句怎么写啊 ......
将一个查询语句赋给一个变量,如下:
DECLARE @STR NVARCHAR(MAX)
SET @STR='SELECT * from SALE_PROD'
怎么样才能执行它呢?
请高手,仁兄,侠姐帮帮忙啊
多谢,可以啦,高手啊
直接执行就行了
exec ......