由买买提看人间百态

topics

全部话题 - 话题: varchar2
1 2 下页 末页 (共2页)
B*****g
发帖数: 34098
1
what will be to_char(char/varchar2) return? char or varchar2?
http://download.oracle.com/docs/cd/B10501_01/server.920/a96540/functions133a.htm#1003495
http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/functions179.htm#i1006717
http://download.oracle.com/docs/cd/B28359_01/olap.111/b28126/dml_functions_2113.htm
9i return database character set. what is database character set.?
10g return VARCHAR2.
11g return text? what is test, is it just char?
SELECT *
FROM tab1
WHERE col1 = 'abc'
'a
c*****d
发帖数: 6045
2
to_char返还varchar2还是char很重要吗?
varchar2还是char只是内部存储的方式不同
k**e
发帖数: 86
3
来自主题: Database版 - ORACLE VARCHAR2一问
如果VARCHAR2中存有空字符(\0), SELECT时会不会被截断, 象C中的 CHAR* 一样?
i*****9
发帖数: 293
4
来自主题: Database版 - 一个oracle query, 求问
有下面这四个表和下面这几个要求,怎么写比较好能得到我想要的结果? 多谢
1,先选出USERACC_FOR_DOM_REP的所有的值:username, account_status, target_db.
2,再从上面的结果中除掉所有EXCEPTION_ACC的username(条件是EXCEPTION_ACC里的
username和target_db是USERACC_FOR_DOM_REP的)。
3, 再从上面的结果中除掉所有MAX_USER_LOGIN的username(条件是MAX_USER_LOGIN里的
username和target_db是USERACC_FOR_DOM_REP的,外加LAST_LOGIN < sysdate -90)。
4, 再从上面的结果中除掉所有MYTABLE的username(条件是MYTABLE里的username和
target_db是USERACC_FOR_DOM_REP的
SQL> desc USERACC_FOR_DOM_REP
Name Null? Type
... 阅读全帖
h******t
发帖数: 27
5
来自主题: Database版 - SQL question HELP
what is the averge of age among all students who participate in more than
2 activity
STUDENT (
StuID NUMBER,
LName VARCHAR2(12),
Fname VARCHAR2(12),
Age NUMBER,
Sex VARCHAR2(1),
Major NUMBER,
Advisor NUMBER,
city_code varchar2(3)
);
ACTIVITY (
actid number ,
activity_name varchar2(25))
PARTICIPATES_IN ;
create table PARTICIPATES_IN (
stuid number,
actid number )
thanks
B*****g
发帖数: 34098
6
来自主题: Database版 - 怎么去除duplicates
I know this for normal columns, just not sure about rowid. Did one test,
seems in same SQL (no any SP) works. So for one simple sql your guys are
right, rowid can not be changed which is same as normal column.
CREATE TABLE test_delete (ID NUMBER(1), VAL VARCHAR2(1));
INSERT INTO test_delete VALUES(1, 'A');
INSERT INTO test_delete VALUES(2, 'B');
INSERT INTO test_delete VALUES(3, 'C');
COMMIT;
CREATE OR REPLACE FUNCTION LOCK_TEST(vID NUMBER) RETURN VARCHAR2 IS
tmpVar VARCHAR2(100);
tmpVar1 VA... 阅读全帖
c******a
发帖数: 2516
7
各位大虾:
小弟再使用oracle时碰到一个问题,急需解决,望各位援手!

新建一个package, 其中所操作的表是可变的,所以要用变量控制
所操作的表,即将表名用varchar2变量代替,不知可否!
反正当create 一个包体时总是报错!
例子如下:
create or replace package pkgtest as
procedure tmp(ddot in integer,tbname in varchar2);
end pkgtest;
/
create or replace package body pkgtest as
procedure tmp(ddot in integer,tbname in varchar2)
is
tmpname varchar2(40);
tmpdot number(5);
begin
select name,dot into tmpname, tmpdot
from tbname
where dot=ddot;

c******a
发帖数: 2516
8
来自主题: Database版 - 求救!!! 一个oracl的问题淀
各位大虾:
小弟再使用oracle时碰到一个问题,急需解决,望各位援手!
新建一个package, 其中所操作的表是可变的,所以要用变量控制所操作的表,即将表
名用varchar2变量代替,不知可否!
反正当create 一个包体时总是报错!
例子如下:
create or replace package pkgtest as
procedure tmp(ddot in integer,tbname in varchar2);
end pkgtest;
/
create or replace package body pkgtest as
procedure tmp(ddot in integer,tbname in varchar2)
is
tmpname varchar2(40);
tmpdot number(5);
begin
select name,dot into tmpname, tmpdot
from tbname
where dot=ddot;
insert in
y********o
发帖数: 2565
9
来自主题: Database版 - Oracle database link problem
测试如下:
sqlplus /nolog
SQL> connect scott/tiger@Oracle10g
Connected.
SQL> desc user_tables;
Name Null? Type
------------------------ -------- -----------------------
TABLE_NAME NOT NULL VARCHAR2(30)
TABLESPACE_NAME VARCHAR2(30)
CLUSTER_NAME VARCHAR2(30)
IOT_NAME VARCHAR2(30)
[snip]
SQL>
B*****g
发帖数: 34098
10
下面这个work,没有用dbms_lob。我估计那个append在trigger之后。
CREATE TABLE PROBLEM_HISTORY_SUMMARY
(
PROBLEM_HISTORY VARCHAR2(4000 BYTE),
TYPE VARCHAR2(10 BYTE),
PROBLEM_BLOB BLOB,
DATESTAMP TIMESTAMP(6)
);
CREATE TABLE TABLE1
(
THENUMBER VARCHAR2(20 BYTE),
TYPE VARCHAR2(10 BYTE),
DESCRIPTION BLOB,
DATESTAMP TIMESTAMP(6)
)
;
CREATE OR REPLACE TRIGGER TRIGGER_TABLE1
BEFORE INSERT
ON TABLE1
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
DECLARE
BEGIN
UPDATE
u*********8
发帖数: 18
11
各位大牛, 我有一个函数, 生产用的, 运行没问题,就是太慢了,整个函数要20秒
,放web 就30秒了。 哪位大牛给
改改吧,多谢了。急用呢!
SQL> create or replace function ws_selectAwardCount_test
2 (
3 p_barcode varchar2
4 ) return VARCHAR2 is
5
6 v_id_of_job varchar2(100);
7 v_total_scanned number:=0;
8
9 v_barcode varchar2(32);
10
11 v_counter number:=0;
12
13 v_begin timestamp;
14 v_begin2 timestamp;
15 v_end timestamp;
16 v_end2 timestamp;
17 v_diff
u****s
发帖数: 107
12
写了个函数实现输入一个title_id参数,查询到另外两个参数v_btitle和v_pname放在游
标里.
编译通过,但运行出错.
请问哪里不对?着急啊,跪求高人指教.
create or replace package types as
type mytype is ref cursor;
end;
create or replace function get(title_id VARCHAR2)
return types.mytype is
cursor_bp types.mytype;
sqlstr varchar2(4096);
v_btitle VARCHAR2(30);
v_pname VARCHAR2(30);
begin
sqlstr :='SELECT title,name
FROM books JOIN publisher using(pubid)
WHERE isbn = :tit
l*******3
发帖数: 1074
13
来自主题: Database版 - 请问一下怎么优化这个SQL查询?
MySQL数据库:
select something from table where varchar1 like "%var1%" and varchar2 = "
var2" and varchar3 = "var3";
table里大约有百万条几率,每次查询都需要几秒钟;我已经分别为varchar1,
varchar2,varchar3建立了单列索引和多列索引(varchar1和varchar2和varchar3,以
及varchar2和varchar3),改进不明显。
多谢指点!
m******u
发帖数: 12400
14
个人觉得这个题目出的不好(比如第二题),answer key 也不算怎样,第一题就可见
一斑。
。。。。。。。。。。。。。。
Table 1 : DEPT
DEPTNO (NOT NULL , NUMBER(2)), DNAME (VARCHAR2(14)),
LOC (VARCHAR2(13)
Table 2 : EMP
EMPNO (NOT NULL , NUMBER(4)), ENAME (VARCHAR2(10)),
JOB (VARCHAR2(9)), MGR (NUMBER(4)), HIREDATE (DATE),
SAL (NUMBER(7,2)), COMM (NUMBER(7,2)), DEPTNO (NUMBER(2))
MGR is the empno of the employee whom the employee reports to. DEPTNO is a
foreign key.
QUERIES
1. List all the employees who have at least one person reporting to them.
2. L... 阅读全帖
k*z
发帖数: 4704
15
来自主题: Database版 - sql语言求解
--table设计的有问题,首先应该给员工分配ID,防止重名,其次给时间加timestamp防止一天多次评级。再有就是
--初学者,练习练习,还能优化么? 应该不用分析函数,子函数也没必要。
drop table stock;
create table stock (
stock_ticket varchar2(5) ,
analyst_name varchar2(25),
rating_date date,
rating_name varchar2(10)
)
;
insert into stock values ('F','Tim','1-Dec-2010','Sell');
insert into stock values ('F','Tim','1-May-2009','Sell');
insert into stock values ('G','Abramson','6-Sep-2009','Hold');
insert into stock values ('G','Abramson','1-Oct-2010','Sell');
insert into stock valu... 阅读全帖
k*z
发帖数: 4704
16
来自主题: Database版 - sql语言求解
再次请师傅们评价。
drop table stock;
create table stock (
stock_ticket varchar2(5) ,
analyst_name varchar2(25),
rating_date date,
rating_name varchar2(10)
)
;
insert into stock values ('F','Tim','1-Dec-2010','Sell');
insert into stock values ('F','Tim','1-May-2009','Sell');
insert into stock values ('G','Abramson','6-Sep-2009','Hold');
insert into stock values ('G','Abramson','1-Oct-2010','Sell');
insert into stock values ('E','Abramson','1-Mar-2010','Sell');
insert into stock values ('G','Johns','5-Dec-... 阅读全帖
s*****o
发帖数: 1121
17
http://forums.huaren.us/showtopic.aspx?topicid=2099575&forumpage=1
版面: Suggestions意见和建议
作者:ytwk
标题:chali1234大字报华人id, 人身攻击
内容:
每逢看到坑王发帖,chali1234 id的跟帖就会不出意外的出现。这些回帖大多不是就事
论是讨论问题,而是把在外面收集到的未经证实的信息拿来羞辱坑王以达到封口的目的
。如果有旁人看不惯,就恶语相向。我们大家可能都厌恶坑王的个人生活方式或不喜欢
他在论坛上说的话,但这种对坑王着迷般的尾随骚扰纠缠不休已构成cyberstalking。
坑王如果违反版规可以举报,这样没完没了的跟踪揭丑甚至发专帖针对某个id有违华人
不许"大字报华人id,挑衅,人身攻击,暴露他人隐私,人肉他人生活中真实的私人信
息,及负面内容回复""的版规。
Cyberstalking is the use of the Internet or other electronic means to stalk
or harass an individual, a group, ... 阅读全帖
e*****3
发帖数: 610
18
来自主题: SanFrancisco版 - 请教个SQL问题
有一个DATABASE TABLE,里面的每一行记录是每个USER SESSION LOGIN/LOGOUT的时
间 (LOGOUT 为空如果USER还在线,或者TIMEOUT的情况下也有可能为空)。怎样做
一个SQL QUERY找出什么时候有最多的USER SESSION?
TABLE DEF
ID(NUMBER)   USERID(VARCHAR2)  SESSIONID(VARCHAR2)   LOGINTIME
(DATE) LOGOUTTIME(DATE)
s*****o
发帖数: 1121
19
【 以下文字转载自 Military 讨论区 】
发信人: sapporo (sapporo), 信区: Military
标 题: 泪流满面:华人大妈太有正义感了
发信站: BBS 未名空间站 (Mon Nov 28 18:49:16 2016, 美东)
http://forums.huaren.us/showtopic.aspx?topicid=2099575&forumpage=1
版面: Suggestions意见和建议
作者:ytwk
标题:chali1234大字报华人id, 人身攻击
内容:
每逢看到坑王发帖,chali1234 id的跟帖就会不出意外的出现。这些回帖大多不是就事
论是讨论问题,而是把在外面收集到的未经证实的信息拿来羞辱坑王以达到封口的目的
。如果有旁人看不惯,就恶语相向。我们大家可能都厌恶坑王的个人生活方式或不喜欢
他在论坛上说的话,但这种对坑王着迷般的尾随骚扰纠缠不休已构成cyberstalking。
坑王如果违反版规可以举报,这样没完没了的跟踪揭丑甚至发专帖针对某个id有违华人
不许"大字报华人id,挑衅,人身攻击,暴露他人隐私,人肉他人生活中真实的... 阅读全帖
l****a
发帖数: 336
20
我现在有一份文件, 含有德国字母, 比如a 上边加2个点. 我用insert语句加入数据库
的时候, 可以正常显示为 a 上边加2个点. 但是用ctl load数据, 该字母居然显示为"?
".
database的这个column 设定是 varchar2(100).
试过改成 varchar2 (100 char), 不灵.
数据库本身不能改变character set, 公司不让.
向高手们求助, 该咋办?
s*k
发帖数: 144
21
来自主题: Database版 - 非高人莫答
你用的Oracle版本VARCHAR2最大长度为2000B,
建议换用其他类型如LONG, CLOB或拆分你的
数据成多个Column,
也可升级Oracle至最新版(但VarChar2也只能
支持到4000B)
n**m
发帖数: 255
22
来自主题: Database版 - the most stupid question
varchar2 is the datatype of the column.
varchar is a built-in data type. I assumed varchar2 is User defined one.
(20) indicate the size
i*****t
发帖数: 220
23
来自主题: Database版 - what is wrong with the statement?
I am using Oracle. See the statement:
create table MESSAGE
(
TYPE int(20),
COLOR varchar2(20),
CONTENT varchar2(400)
);
Oracle always says: the line of 'TYPE ...' misses the right parenthesis. What
is wrong? Thanks.
h*********s
发帖数: 14
24
来自主题: Database版 - Chained full outer join in oracle 9
Hi there,
I have a werid problem for chained full outer join in oracle.
I have following three tables:
SQL> desc part
Name Null? Type
----------------------------------------- -------- -----------------
PART_ID NOT NULL VARCHAR2(4)
SUPPLIER_ID VARCHAR2(4)
SQL> select * from part;
PART SUPP
B*****g
发帖数: 34098
25
其实我真的很无聊,搞了一个user defined function in oracle.
CREATE OR REPLACE FUNCTION CalculateDiagonal(pivTableName IN VARCHAR2)
RETURN NUMBER IS
TYPE ltypColumn IS TABLE OF user_tab_cols%ROWTYPE;
lrecColumn ltypColumn;

TYPE ltypSeqNo IS TABLE OF VARCHAR2(100);
lrecSeqNo ltypSeqNo;
lnTotal NUMBER := 0;
lnTmpTotal NUMBER := 0;
lvSql VARCHAR (1000) := '';
BEGIN
lvSql := 'SELECT * FROM user_tab_cols WHERE table_name = ''' ||
pivTableName || '''';
EXECUTE IMME
c*****d
发帖数: 6045
26
是的,在sqlldr之前表要存在
大部分情况下,导入之前应该知道表的每个字段的含义和数据类型
否则导入这些数据有什么用呀
一种方法是把所有字段都定义成varchar2
导入之后再说
另外一种更规范的做法
我在前面的帖子里说了
sqlldr的control file可以规定bad file
可以将导入过程中类型错误的记录存在这个文件里
这样你就知道那些行被剔除出来了
比如应该是两个字段(number, varchar2)
500 abc
结果数据文件里存的是
500abc
那么对生成的bad file修改之后
把bad file作为新的数据文件进行导入

了.
l****a
发帖数: 336
27
我现在有一份文件, 含有德国字母, 比如a 上边加2个点. 我用insert语句加入数据库
的时候, 可以正常显示为 a 上边加2个点. 但是用ctl load数据, 该字母居然显示为"?
".
database的这个column 设定是 varchar2(100).
试过改成 varchar2 (100 char), 不灵.
数据库本身不能改变character set, 公司不让.
向高手们求助, 该咋办?
l****a
发帖数: 336
28
我现在有一份文件, 含有德国字母, 比如a 上边加2个点. 我用insert语句加入数据库
的时候, 可以正常显示为 a 上边加2个点. 但是用ctl load数据, 该字母居然显示为"?
".
database的这个column 设定是 varchar2(100).
试过改成 varchar2 (100 char), 不灵.
数据库本身不能改变character set, 公司不让.
向高手们求助, 该咋办?
l****a
发帖数: 336
29
我现在有一份文件, 含有德国字母, 比如a 上边加2个点. 我用insert语句加入数据库
的时候, 可以正常显示为 a 上边加2个点. 但是用ctl load数据, 该字母居然显示为"?
".
database的这个column 设定是 varchar2(100).
试过改成 varchar2 (100 char), 不灵.
数据库本身不能改变character set, 公司不让.
向高手们求助, 该咋办?
l****a
发帖数: 336
30
现在有一份文件, 含有德国字母, 比如a 上边加2个点. 我用insert语句加入数据库的
时候, 可以正常显示为 a 上边加2个点. 但是用.ctl file load数据, 该字母居然显示
为"?".
database里这个column 设定是 varchar2(100).
试过改成 varchar2 (100 char), 不灵.
数据库本身不能改变character set, 公司不让.
向高手们求助, 该咋办?
l****a
发帖数: 336
31
我现在有一份文件, 含有德国字母, 比如a 上边加2个点. 我用insert语句加入数据库
的时候, 可以正常显示为 a 上边加2个点. 但是用ctl load数据, 该字母居然显示为"?
".
database的这个column 设定是 varchar2(100).
试过改成 varchar2 (100 char), 不灵.
数据库本身不能改变character set, 公司不让.
向高手们求助, 该咋办?
s*******1
发帖数: 40
32
我现在有一份文件, 含有德国字母, 比如a 上边加2个点. 我用insert语句加入数据库
的时候, 可以正常显示为 a 上边加2个点. 但是用ctl load数据, 该字母居然显示为"?
".
database的这个column 设定是 varchar2(100).
试过改成 varchar2 (100 char), 不灵.
数据库本身不能改变character set, 公司不让.
向高手们求助, 该咋办?
c**t
发帖数: 2744
33
来自主题: Database版 - open cursor for collection?

procedure Foo(pResult OUT type_return_cursor)
as
type MyRow is object (
f1 varchar2(10),
f2 NUMBER,
f3 Date);
type MyTbl is VARRAY(10) of MyRow;
myTbl MyTbl;
stmt varchar2(5000) := '';
begin
myTbl := MyTbl();
for i IN 1..10 loop
myTbl(i).f1 := 'string of ' || to_char(i);
myTbl(i).f2 := i;
myTbl(i).f3 := trunc(sysdate, 'HH24') + i / 12;
end loop;
for i in myTbl.First..myTbl.Last
Loop
if i > 1 then stmt := stmt || CHR(10) || 'UNION' || CHR(10); e
M*********e
发帖数: 190
34
来自主题: Database版 - 请教一个SQL Server的面试题
Don't know TSQL.
In Oracle, use rowid pseudocolumn.
思想就是先找到有discint col1的所有行(得到set 1)和有distict col2的所有行(得
到set 2)。取 set 1和 set 2中rowid相同的行.
不知道有没有漏洞。
#################
create table test(col1 varchar2(5), col2 varchar2(5));
insert into test values ('V1','B');
insert into test values ('V12','F');
insert into test values ('V3','F');
insert into test values ('V2','C');
insert into test values ('V2','D');
insert into test values ('V3','E');
#################
select * from test where rowid i... 阅读全帖
b*****d
发帖数: 15
35
来自主题: Database版 - 一道面试题,求助
We have the following schema of a table:
create table Test (id number, name varchar2(32), desc varchar2(400));
create index index_test on Test (name);
Which of the following statements will invoke an index scan by oracle
execution plan
a) select * from test where name='name';
b) select * from test where name like 'name%';
c) select * from test where name like '%name';
d) select * from test where name like '%name%'
v***e
发帖数: 2108
36
来自主题: Database版 - 再出一道面试题
看到这道题好玩,答案是 ab是index scan,cd是table scan
两种SQL plan
再来一道题玩一下,如果Test table巨大无比,一定要用parallel query,
这两种parallel plan会有何不同呢(PX coordinator不算的话)?
不许查书。
发信人: bearkid (bearkid), 信区: Database
标 题: 一道面试题,求助
发信站: BBS 未名空间站 (Wed Dec 28 21:18:35 2011, 美东)
We have the following schema of a table:
create table Test (id number, name varchar2(32), desc varchar2(400));
create index index_test on Test (name);
Which of the following statements will invoke an index scan by oracle
execution plan
a) select * fro... 阅读全帖
j*****4
发帖数: 283
37
REATE OR REPLACE FUNCTION f_test (in_activity_id IN INTEGER)
RETURN VARCHAR2 AS
declare
cursor p_cur is
select coalesce(f.FULL_NAME , g.FULL_NAME) as p_name
from OCER_ACT_PRE e
left join ocer_p f on e.P_ID = f.ID
left join view2 g on f.person_id = g.person_id
where e.activity_id = in_activity_id;
p_rec p_cur%ROWTYPE;
lcl_p_list varchar2;
BEGIN
OPEN pr_cur;
LOOP
FETCH p_cur INTO p_rec;
EXIT WHEN p_cur%NOTFOUND;
... 阅读全帖
j*****4
发帖数: 283
38
想得到所有的 p_name.
Thanks.
改了一下,怎么也不能 compile.
REATE OR REPLACE FUNCTION f_test (in_activity_id IN INTEGER)
RETURN VARCHAR2 AS
declare
cursor p_cur is
select coalesce(f.FULL_NAME , g.FULL_NAME) as p_name
from OCER_ACT_PRE e
left join ocer_p f on e.P_ID = f.ID
left join view2 g on f.person_id = g.person_id
where e.activity_id = in_activity_id;
p_rec p_cur%ROWTYPE;
lcl_p_list varchar2;
BEGIN
OPEN p_cur;
LOOP
FETCH p_cur INT... 阅读全帖
j*****4
发帖数: 283
39
Ok, I changed it. But still can not compile.
总说declare错. Any idea?
CREATE FUNCTION f_test (in_activity_id IN INTEGER)
RETURN VARCHAR2 AS
declare
cursor p_cur is
select coalesce(f.FULL_NAME , g.FULL_NAME) as p_name
from OCER_ACT_PRE e
left join ocer_p f on e.P_ID = f.ID
left join view2 g on f.person_id = g.person_id
where e.activity_id = in_activity_id;
p_rec p_cur%ROWTYPE;
lcl_p_list varchar2;
BEGIN
OPEN p_cur;
LOOP
FE... 阅读全帖
y****9
发帖数: 144
40

SQL> CREATE or replace FUNCTION f_test (in_activity_id IN INTEGER)
2 RETURN VARCHAR2
3 AS
4 cursor p_cur is
5 select object_name p_name from user_objects e
6 where e.object_id = in_activity_id;
7 p_rec p_cur%ROWTYPE;
8 lcl_p_list varchar2(4000);
9 BEGIN
10 OPEN p_cur;
11 LOOP
12 FETCH p_cur INTO p_rec;
13 EXIT WHEN p_cur%NOTFOUND;
14 lcl_p_list := lcl_p_list || ';' || p_rec.p_name;
15 END LOOP;
16 CLOSE p_cur;
1... 阅读全帖
j*****4
发帖数: 283
41
CREATE OR REPLACE FUNCTION f_test (in_activity_id IN INTEGER)
RETURN VARCHAR2
AS
cursor preceptor_cur is
select coalesce(f.FULL_NAME , g.FULL_NAME) as preceptor_name
from OCER_ACT_PRE e
left join ocer_preceptor f on e.PRECEPTOR_ID = f.ID
left join view2 g on f.person_id = g.person_id
where e.activity_id = in_activity_id;
preceptor_rec preceptor_cur%ROWTYPE;
lcl_preceptor_list varchar2(4000);
BEGIN
OPEN preceptor_cur;
LOOP
... 阅读全帖
B*****g
发帖数: 34098
42
来自主题: Database版 - 请教: SQL SUM
主要是处理不是number的比较烦,oracle 11g写了一个,纯属娱乐

***只有一列***
WITH tmp AS
(SELECT XMLTYPE (
DBMS_XMLGEN.getxml ('SELECT 1, ''2'', ''3.0'', '' 4.2 '',
sysdate, ''abcd'' FROM DUAL'
)
) myxml
FROM DUAL)
SELECT SUM(v)
FROM tmp a,
XMLTABLE ('/ROWSET/ROW/*' PASSING myxml
COLUMNS v VARCHAR2(1000) PATH '.')
WHERE REGEXP_LIKE(TRIM(v), '^[0-9]\d{0,2}(\.\d{1,2})?%?$')
GROUP BY 1
***整个table***
WITH tmp AS
(SELECT ROWNUM rn,
... 阅读全帖
B*****g
发帖数: 34098
43
来自主题: Database版 - 这个新功能我喜欢
WITH
FUNCTION get_domain(url VARCHAR2) RETURN VARCHAR2 IS
pos BINARY_INTEGER;
len BINARY_INTEGER;
BEGIN
pos := INSTR(url, 'www.');
len := INSTR(SUBSTR(url, pos + 4), '.') - 1;
RETURN SUBSTR(url, pos + 4, len);
END;
SELECT DISTINCT get_domain(catalog_url)
FROM product_information;
/
l******b
发帖数: 39
44
来自主题: Database版 - 请教关于大数据表的设计
lz看这个能成马?
Composite Partitioning
Composite partitioning partitions data using the range method, and within
each partition, subpartitions it using the hash or list method.
Composite range-list partitioning provides the manageability of range
partitioning and the explicit control of list partitioning for the
subpartitions.
Composite Partitioning Range-List Example
CREATE TABLE bimonthly_regional_sales
(deptno NUMBER,
item_no VARCHAR2(20),
txn_date DATE,
txn_amount NUMBER,
state VARCHAR2(2))
PARTIT... 阅读全帖
n****f
发帖数: 905
45
来自主题: Database版 - 求教mysql数据库构建
so you should have 3 tables:
1 实验类型 Table: TEST_TABLE <- YOU NAME IT
TEST_ID integer PK <- (THE ID OF 实验类型)
DESC VARCHAR2(100) <- (THE DESCRIPTION OF 实验类型)
2 样本 Table: SAMPLE_TABLE <- YOU NAME IT
SAMPLE_ID integer PK <- (THE ID OF 样本)
DESC VARCHAR2(100) <- (THE DESCRIPTION OF 样本)
3 样本-DATA Table: XYZ <- YOU NAME IT
TEST_ID integer PK <- (THE ID OF 实验类型)
SAMPLE_ID integer PK <- (THE ID OF 样本)
SAMPLE_DATA NUMERIC(X, Y) <- (THE DATA)
這種設計方式是比較簡單的。 你也可以加以豐富。
比如, 對實驗進行進一步分類, 或者對於樣本進行進一步分類, 等等。
你... 阅读全帖
e******u
发帖数: 211
46
来自主题: Database版 - oracle pl sql recursive function
The function occasionally doesn't have the return value. Anyone knows what
might be the issue?
FUNCTION chk_and_gen_ic (cnt IN NUMBER)
RETURN VARCHAR2
IS
n_invitation_code VARCHAR2 (20);
t_ic_chk NUMBER;
BEGIN
SELECT DBMS_RANDOM.STRING ('X', 10)
INTO n_invitation_code
FROM DUAL;
select count(*) into t_ic_chk from invitation_code where
invitation_code = n_invitation_code and rownum = 1;
IF t_i... 阅读全帖
d**e
发帖数: 6098
47
来自主题: JobHunting版 - one Oracle 9i/10g question
其实我说的就是在已经是date format下 + 2
'9/30/2010'或 '30-Sep-2010'这些只是varchar2之类的format
B*****n
发帖数: 135
48
来自主题: Database版 - 初级问题
In oracle:
suppose you already have a table EMP(name Varchar2(30), salary Number);
and you want to add a column called 'id', just do:
SQL> ALTER TABLE EMP ADD (id Number);
if you now want to populate this id column from 1 to the number of existing
employees in the EMP table, just do:
SQL> UPDATE EMP SET id = rownum;
To rename table 'EMP' to 'EMPLOYEE', just do:
SQL> RENAME EMP TO EMPLOYEE;
h******t
发帖数: 27
49
来自主题: Database版 - Another one
how many students participate in the most popular student activity
what's the name of this actiity
ACTIVITY (
actid number ,
activity_name varchar2(25)
);
PARTICIPATES_IN (
stuid number,
actid number
);
h**e
发帖数: 1
50
来自主题: Database版 - 非高人莫答
建了一个表:
CREATE TABLE aa
( id NUMBER,
description VARCHAR2(3000));
用SQLLDR, CONTROL FILE 如下:
LOAD DATA
INFILE 'D:\desc.CSV'
INTO TABLE AA
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
(
id,
description
)
desc.CSV:
1001,"Former telephone-service sales agency CTC
Communications Group is morphing into a marketer of multiple
modes of modern media. It holds CTC Communications Corp.,
which sells integrated telecommunications services,
including local and long-distance, network products and
servi
1 2 下页 末页 (共2页)