A suggestion
A reader, October 24, 2003 - 11:45 am UTC
hi Tom
Great thread! Thanx for sharing your secrets!:)
Of all the things that you do one of the toughest
( from a developer's point of view - not a dba) is
to write good sql statements. Is it possible for you
to somehow have a way so that we get practice of
answering sql statements (before you do that for us)?
Basically, can this site be used to motivate people to
come up with answers to sql problems - I think one of
the biggest reasons you are where you are is that you
keep practising daily on all aspects of Oracle (including
sql).
I am not sure how the above can be done - but it
would be great - if we can exploit this site for
that purpose.
Where is your mentor now?
A reader, October 24, 2003 - 12:22 pm UTC
And, what's he doing?
October 24, 2003 - 12:46 pm UTC
i lost touch with him a while ago -- after I left the other company and moved around. I don't know where he is now.
A reader, October 24, 2003 - 1:44 pm UTC
May be, if you can publish his name here, somebody might find him. After all, its a small world :-)
Inspired!!!!
Pawan, October 24, 2003 - 4:45 pm UTC
Really inspired. Will try and see how much I can achieve.
Arun Gupta, October 24, 2003 - 5:20 pm UTC
Tom,
This is really inspirational and educational. Thanks for sharing with us your knowledge, wisdom, career path and how you got where you are.
Don't you think it takes alot in becoming like you..
Ajeet, October 24, 2003 - 9:57 pm UTC
Tom,
Many times I think you are exceptional...it is not easy to be like you as for as Knowledge goes...how many we have more like you in this world--who answers questiones..from strangers with such an intrest and responsibility .oh..yes sometime you scold too.
But true -- if all of us can not become like you,we can at least improve a bit...and yes alot of credit for this would go.Not sure about others but you inspired me alot.
Regards,
Ajeet
and what about your motivations ...
Alberto Dell'Era, October 25, 2003 - 3:08 pm UTC
... (if you don't mind my curiosity) for running asktom ?
That is, you answer questions even when you are on vacation, during weekends, waiting for planes, etc - definitely, for you asktom is not merely a job, but much much more.
I'm interested especially on what makes "a question that you enjoy" - this would have an immediate payback for my question compiling and selecting skills ...
October 25, 2003 - 3:59 pm UTC
some people use crossword puzzles or some other mental trick to wake themselves up in the morning. I've used this technique since 1994. I would answer questions first thing in the morning. It wakes me up (actually, i just now got up from a little saturday afternoon nap :)
My favorite questions -- they are the ones that turn out different from what I expect or cause me to learn something new, which happens just about every single day. My favorite questions are the ones about the database that I have to research or setup a simulation to discover myself.
Has it always been happy memory ?
Robert, October 25, 2003 - 4:53 pm UTC
Tom,
Did you ever feel frustrated with Oracle...the old releases,
of course ? and What ticked you off ?
October 26, 2003 - 9:11 am UTC
Every release is better then the last. No, I was never "unhappy" with it.
I am "unhappy" when forced to work within the confines of a really old release (like when I get a 7.3 question today -- a full 7 releases AFTER the fact). Then I know what was missing back then.
But, its like a laptop/desktop. If you don't know what features you are missing, you are happy mostly with your existing equipment. It is only when you play on someone elses brand new hardware that your old stuff starts to look pretty lame :)
now I understand!
Alberto Dell'Era, October 25, 2003 - 4:58 pm UTC
You are a research scientist targeting Oracle as his research interest, and we act as the Professor's students that ask "fresh mind" questions during lectures, preventing his interest from fading into routine.
Thanks, my curiosity is 100% happy now ...
Alberto
What are you up to ?
Christo Kutrovsky, October 25, 2003 - 11:56 pm UTC
I've been looking to your newly answered questions from the past several weeks, and there are not so many. I am planning on gradualetelly reading all your answers, not just whenever I am looking for something specific.
The last time this happened, was just before the Oracle 10G presentation in Ottawa, after that .. at least 20 new questions were answered in just 2 days.
So last time this happened, you were preparing the 10G presention. Or simply playing arround with 10G. Or maybe something different.
So what are you up to this time ? :)))
October 26, 2003 - 10:07 am UTC
well, it was actually just AFTER Ottawa that I had a free period where I did take lots of questions, these are new questions by day:
...
14-AUG-03 9
15-AUG-03 15
16-AUG-03 29
17-AUG-03 11
18-AUG-03 3
22-AUG-03 14
23-AUG-03 9
24-AUG-03 7
29-AUG-03 9
30-AUG-03 7
02-SEP-03 9
06-SEP-03 35
07-SEP-03 37
08-SEP-03 22
09-SEP-03 19
11-SEP-03 10
12-SEP-03 11
13-SEP-03 10
14-SEP-03 8
15-SEP-03 2
16-SEP-03 15
17-SEP-03 10
20-SEP-03 10
21-SEP-03 22
23-SEP-03 13
26-SEP-03 21
27-SEP-03 17
28-SEP-03 25
29-SEP-03 13
01-OCT-03 13
02-OCT-03 24
04-OCT-03 24
05-OCT-03 25
06-OCT-03 12
10-OCT-03 14
11-OCT-03 25
12-OCT-03 15
19-OCT-03 8
22-OCT-03 5
24-OCT-03 10
25-OCT-03 22
1012 rows selected.
so you see -- I've been taking them. BUT... if we look at published vs unpublished:
1 select trunc(timestamp),
2 count( decode( status, 1, 1 ) ) "Not Read",
3 count( decode( status, 2, 1 ) ) "Waiting",
4 count( decode( status, 3, 1 ) ) "Processing",
5 count( decode( status, 4, 1 ) ) "Not Published",
6 count( decode( status, 5, 1 ) ) "Published",
7 count(*)
8 from WWC_ASK_SUBMITTED_QUESTIONS$ where timestamp >= to_date( '14-aug-2003')
9 group by trunc(timestamp)
10* order by 1
ask_tom@ASKUS> /
TRUNC(TIM Not Read Waiting Processing Not Published Published COUNT(*)
--------- ---------- ---------- ---------- ------------- ---------- ----------
14-AUG-03 0 0 0 5 4 9
15-AUG-03 0 0 0 11 4 15
16-AUG-03 0 0 0 25 4 29
17-AUG-03 0 0 0 9 2 11
18-AUG-03 0 0 0 3 0 3
22-AUG-03 0 0 0 11 3 14
23-AUG-03 0 0 0 8 1 9
24-AUG-03 0 0 0 5 2 7
29-AUG-03 0 0 0 5 3 9
30-AUG-03 0 0 0 4 3 7
02-SEP-03 0 0 0 6 3 9
06-SEP-03 0 0 0 25 10 35
07-SEP-03 0 0 0 33 4 37
08-SEP-03 0 0 0 14 8 22
09-SEP-03 0 0 0 16 3 19
11-SEP-03 0 0 0 6 4 10
12-SEP-03 0 0 0 5 6 11
13-SEP-03 0 0 0 9 1 10
14-SEP-03 0 0 0 4 4 8
15-SEP-03 0 0 0 0 2 2
16-SEP-03 0 0 0 12 3 15
17-SEP-03 0 0 0 4 6 10
20-SEP-03 0 0 0 4 6 10
21-SEP-03 0 0 0 16 6 22
23-SEP-03 0 0 0 11 2 13
26-SEP-03 0 0 0 14 7 21
27-SEP-03 0 0 0 11 6 17
28-SEP-03 0 0 0 19 6 25
29-SEP-03 0 0 0 9 4 13
01-OCT-03 0 0 0 12 1 13
02-OCT-03 0 1 0 18 5 24
04-OCT-03 0 1 0 21 2 24
05-OCT-03 0 0 0 20 5 25
06-OCT-03 0 0 0 10 2 12
10-OCT-03 0 1 0 11 1 14
11-OCT-03 0 0 0 14 11 25
12-OCT-03 0 1 0 11 1 15
19-OCT-03 0 1 0 6 1 8
22-OCT-03 0 0 0 3 2 5
24-OCT-03 0 0 0 8 2 10
25-OCT-03 0 1 2 9 2 22
41 rows selected.
so, while I've been taking the same number of questions -- the "publishability" of them isn't very "high"
which led me to ask "is this a trend", is the ratio of published to submitted questions going down over time:
ask_tom@ASKUS> ask_tom@ASKUS> select trunc(timestamp,'mm'),
count( decode( status, 4, 1 ) ) "Not Published",
count( decode( status, 5, 1 ) ) "Published",
round( count( decode( status, 5, 1 ) )/count(*)*100, 2 ) avg_pub,
count(*)
from WWC_ASK_SUBMITTED_QUESTIONS$
group by trunc(timestamp,'mm')
order by 1
/
2 3 4 5 6 7 8 9
TRUNC(TIM Not Published Published AVG_PUB COUNT(*)
--------- ------------- ---------- ---------- ----------
01-MAY-00 861 372 30.17 1233
01-JUN-00 278 282 50.36 560
01-JUL-00 241 190 44.08 431
01-AUG-00 453 404 47.14 857
01-SEP-00 521 350 40.18 871
01-OCT-00 320 245 43.36 565
01-NOV-00 285 234 45.09 519
01-DEC-00 327 223 40.55 550
01-JAN-01 361 252 41.11 613
01-FEB-01 485 286 37.09 771
01-MAR-01 568 280 33.02 848
01-APR-01 329 193 36.97 522
01-MAY-01 634 280 30.63 914
01-JUN-01 477 179 27.29 656
01-JUL-01 473 180 27.57 653
01-AUG-01 404 192 32.21 596
01-SEP-01 388 135 25.81 523
01-OCT-01 542 179 24.83 721
01-NOV-01 453 155 25.49 608
01-DEC-01 451 132 22.64 583
01-JAN-02 354 130 26.86 484
01-FEB-02 207 86 29.35 293
01-MAR-02 305 203 39.96 508
01-APR-02 300 210 41.18 510
01-MAY-02 281 161 36.43 442
01-JUN-02 289 180 38.38 469
01-JUL-02 250 158 38.73 408
01-AUG-02 402 211 34.42 613
01-SEP-02 331 206 38.36 537
01-OCT-02 263 196 42.7 459
01-NOV-02 287 147 33.87 434
01-DEC-02 485 212 30.42 697
01-JAN-03 562 190 25.27 752
01-FEB-03 300 124 29.25 424
01-MAR-03 399 161 28.7 561
01-APR-03 226 85 27.33 311
01-MAY-03 245 77 23.91 322
01-JUN-03 380 115 23.23 495
01-JUL-03 152 44 22.45 196
01-AUG-03 167 61 26.64 229
01-SEP-03 218 91 29.45 309
01-OCT-03 143 35 17.77 197
42 rows selected.
and sure enough, it does look like it is trending "down". It historically has been for every one you see, there are 2 more you don't. Now it looks like that is going up a bit -- meaning the questions are redundant (asked and answered 100 times before) or just so not relevant to the general populace.
It is that and the fact the I've been on the road 4 or 5 days a week since the end of August :)
You can see when I started writing in earnst for this last book -- noticable dip in April. I finished in July (but spent 2 weeks on vacation in july/august.
Theory book
Doug, October 26, 2003 - 1:08 am UTC
Out of curiosity - is this the light reading?
Transaction Processing: Concepts and Techniques (Morgan Kaufmann Series in Data Management Systems)
by Jim Gray, Andreas Reuter ??
October 26, 2003 - 10:13 am UTC
Not a chance, it is a college level textbook and above.
It is very deep and full of theory as I recall (its been a couple of years, i read it in its first year of publication). It was not something to read from cover to cover but rather section by section as you became interested in the technology/area.
I still remember sections of it, I really liked the analogy of two phase commit to a marriage ceromony. That exactly describes the situation..... The "preacher" if you will is the commit point. "do you take this woman" (are you prepared to commit), "do you take this man" (are you prepared to commit), if both sites vote yes, then broadcast the outcome "i now pronounce you...." else rollback.
the reviews on amazon convey the basic "goodness" of this book and its breadth.
Do you still read the news in Oracle newsgroup?
David, October 26, 2003 - 6:25 am UTC
Hi Tom,
I initially post my Oracle questions to this newsgroup when I am an Oracle beginner. There are many great posters in this group such as Daniel, Howard or Norman. Do you still read the questions in this group?
David
October 26, 2003 - 10:16 am UTC
Not really -- something had to give. I used to troll them regularly from 1994 till about 2001 or so.
Between
o my job
o my life
o writing
o asktom
o oracle magazine
o travel
i had to give up something. The newsgroups were it. As you said, there are many people out there such as HJR, Richard Foote, Jonathan Lewis, Connor MacDonald, Dan Morgan, and others (bad to put a list, i've left out more than I put in) so I constantly refer people to it, but I've not had the bandwidth to participate recently.
Doing things in the database
A reader, November 04, 2003 - 3:37 am UTC
Hi Tom,
you wrote
<TOMKYTE>
Even though I was a coder -- i found
doing things in the database to make tons more sense then writing tons of code
to do the same. I actually quit my first job after six years soley for the
reason that they wouldn't let me exploit the software they paid so much for
(they were so into this "generic database", the "database is a commidity"
concept that they had me coding our own two phase commit protocol, our own
stored procedure language, our own compilers for the same, our own sql parser --
it was frightening. Funny thing is -- I meet with customers all of the time
still doing just that!)
</TOMKYTE>
Fully agree.
I am on my 4th job now in 12 years (always chose "small"
software-companys up to 100 developpers)
and programming Oracle all the time (not only, of course,
but Oracle makes the best software I know).
Got the same experience everywhere (and still get it):
"database is just a stupid data-store" is a *VERY COMMON*
meaning.
Don't know why, I show my colleagues / bosses
how easy and - most important - performant doing things
*in the database* is, but most of them just don't see it.
Still frustrated,
Matthias
Great thread, I am really inspired.
Amalorpavanathan Yagulasamy, November 07, 2003 - 8:54 am UTC
Tom,
Great thread, I am really inspired.
Regards,
Amal
Thanks for the question regarding "Oracle: New world", version 8.1.7
Leonard Anukam, December 22, 2003 - 9:09 am UTC
Thanks Tom, in fact you have a great influenc on us up and coming Oracle Programmers. But one thing that stands out with you is you ability to share your knowledge. I have approched many people to be a mentor and they fear that their knowledge will be stolen and they refuse to be. You are so generous with you know-how in programing.
I have a problem myself. I like PLSQL programming and find it hard to do sql proper. What do you suggest I should concentrate more.
Thanks
December 22, 2003 - 9:57 am UTC
How can you "steal" knowledge -- that's silly.
In order to become proficient at something, you have to "just do it". Try to solve things using pure SQL (give it an extra five minutes of thought) before dropping into a procedural row by row approach. make sure you KNOW every tool you have (connect by, analytics, having clauses, rollup, cube, etc) -- if you don't have that knowledge, you cannot be successful
developer and dba relationship
Ryan, December 22, 2003 - 10:30 am UTC
It seems that most shops believe that developers and DBAs are two totally different skill sets. Having done this for a few years now, I think the skill sets overlap. I think a truly 'senior' developer should have strong 'dba' skills and a DBA should be able to code at atleat a mid-level.
I think all senmior developers should should understand architecture, tuning, some backup and recovery, etc...
Im troubled by the way organizations totally seperate roles and often run into problems when someone who cant even code puts restrictions on development or when a developer makes some silly assumptions about the database.
What is your opinion on this? I think it is 100% possible to be both a very good developer and a very good DBA. You do not need to choose one or the other.
PS-- you need to do something about the certification tests. The performance tuning OCP is TOTALLY inaccurate. They have you study for things that you tell us not to do on this very website(namely hit ratios and simply 'make it bigger' as a cure all).
December 22, 2003 - 10:47 am UTC
I'm with you 100% on the dba/developer thing. I think they are a team, not warring camps in a fight to the death.
A reader, December 22, 2003 - 12:36 pm UTC
"two phase commit to a marriage ceromony" ... Hahahaha..thats a good example..
Veering off the track just a little...
A reader, December 22, 2003 - 12:41 pm UTC
Hey Tom,
Excellent thread, and a long-awaited insight into your professional development and experience. I'd like to share my experience, and would be interested in your feedback. In 5 plus years of programming, I have reached the conclusion that programmers are perceived as just a group of people who should get the job done, without much direction from the management/team leads and the larger team, and without raising any issues. Their attitude frequently is: "how hard can it be to program?", and think that if a programmer has some concerns/issues with something, that he/she is incompetent. They think of programmers as a bunch of mechanics (no disrespect intended towards the mechanic populace) who should know how to work with a car without complaining. A thankless job, basically. Most of the time I ignore this sentiment exuded by the team and keep my head down and work as hard as I can, but sometimes I am not satisfied with just pleasing myself. I mean, if you don't have the respect of your peers and superiors, even though you might be solving hard problems using intelligent methods and different features, after a certain point you start becoming dissatisfied with yourself and your work, and question the wisdom in applying yourself as much as you do. I know a job/career that a person does has to be one that he/she loves, even if others don't love him/her for it, but there has to be some incentive at the end of the day to excel and keep improving. I'm curious to know how you've dealt with these types of situations (where your work is not appreciated), if you've come across them, and what kept you on track and motivated.
Also, related to this, I agree that you're philosophy of doing it right the first time is the way to do it, but I can't help but wonder if there is some justification to not worrying about performance upfront, and then fixing performance issues as they come up, the benefit being that you're perceived as the hero when you fix the problem, and earn respect that way. If you get it right the first time (while designing the system), people may not appreciate the labor and effort you put in. I have countless examples in my experience where I've been appreciated more when I've fixed performance issues after the fact on systems Ive inherited, but not nearly enough examples of where my superior design has been lauded by everyone.
Thanks for any feedback.
December 22, 2003 - 1:47 pm UTC
well, in reverse -- as to the "do it bad, then fix it"
How can you be a hero if you messed it up the first time around? You are just correctly your mistake.
So, when YOU do the work, do it right the first time (you'll be appreciated). As for systems you inherit, maybe that looks good for you -- but the people who designed it in the first place?
I had the opposite experience from you. I went to work as a "programmer analyst". I grew to "acclaim" in that job because I could take many of the problems and
a) solve them,
b) solve them quickly (i read EVERYTHING i could -- I knew what tools I had available to me and how to use them all),
c) solve them the first time and finally (my stuff wasn't redone)
I worked in a pure software shop -- it was the only thing we did (that was our output). The two layers of mgmt above me was all ex-programmer/analyst (they could tell the good from the bad).
It could be your environment more then anything -- but I find the people that do it right, don't have to do it over, and deliver working product the first time around definitely get noticed -- in the right environment.
But I did get into an environment (described above) where I felt much as you did -- exactly as you describe. Where the customer requirement of "be database independent, don't use any database feature, write a DBMS so we can use any DBMS (how silly is that!)" just killed me. It was like treading water. You don't go forward, you just hope you don't sink. You know you are writing shelfware (funny -- the project is STILL going, 13 years later......)
I left. Much happier now :)
dba/developer interaction
Ryan, December 22, 2003 - 3:07 pm UTC
i wasnt referring to warring camps. Im referring to overlapping skillsets. I feel that good developers should also be pretty knowledgeable of dba tasks and vice versa.
i dont like working with dbas who cannot write code and i do not like working with developers who do not know architecture, etc...
too many mistakes. seems like most shops feel the jobs are totally seperate and you should be one or the other. I dont see any reason why most people cant do both, but be 'specialized' in one or the other.
how do you feel or should the skillsets be seperate?
December 22, 2003 - 3:49 pm UTC
...
Im troubled by the way organizations totally seperate roles and often run into
problems when someone who cant even code puts restrictions on development or
when a developer makes some silly assumptions about the database
.....
sounds a little like "camps" to me -- but anyway -- I firmly believe there should be a database development TEAM consisting of the developers and the DBAs.
how can a DBA make policy if they don't understand the ramifications. Like the DBA that says "no, no, no, you cannot have access to the trace files on this development box". They've just shot themselves in the head (not the foot, the head). No way that system can be tuned or inspected by the developers. I walk away from those sites (they usually let me have access after that).
how can a developer tune or design a system if they don't understand the ramifications. "ah, look, nologging, nologging is fast -- go for it". Did they just mess up the ability for this database to be recovered or what (yes). Unless they work with the DBA's who understand the ramification of what they are doing (you can use nologging safely, you just have to INCORPORATE backups with it!)......
DBA vs. Developers
Mark A. Williams, December 22, 2003 - 3:59 pm UTC
For a good read...
Effective Oracle by Design does a nice job of covering this I think. Tom addresses this mentality and shows why it is so harmful right from the beginning of the book.
We are developing an interal training course to address this particular situation at my company for what it is worth.
- Mark
seconded
Stu Charlton, December 22, 2003 - 4:13 pm UTC
I second Tom's view of what it takes to be the master of your game...
a) read read read read! concept manuals, user manuals, books, and theory
b) read the newsgroups and mailing list archives
c) try stuff out! experiment! benchmark! prove your ideas!
d) re-read stuff constantly, keep trying out old discoveries to keep them fairly fresh in your mind.
It's funny, I read the oracle.server newsgroup semi-regularily and there was a recent thread where one guy stated it's impossible for one man to have as much knowledge as Tom Kyte, he must be a support shill...
I don't know why people are so down on this ability. As long as you LIKE technology, you can aspire to be the next Tom Kyte ... it's not impossible, just requires passion, curiosity, and unwillingness to compromise for the "easy" rule of thumb.
proactive or reactive reading ?
Alberto Dell'Era, December 22, 2003 - 5:11 pm UTC
> i read EVERYTHING i could -- I knew what tools I had
> available to me and how to use them all
Did you read and absorbe/experiment everything in deep, or just read "lightly" and get back to the book/doc when need arised to use some "feature" ?
Which approach would you suggest ?
Thanks
Alberto
December 22, 2003 - 6:42 pm UTC
i read everything quick.
interesting things I played with.
everything else i just sort of "filed away".
then when presented with a problem -- i would say "ahh, you know, that reminds me of something I read about". Sometimes it would be a miss (go back, read in depth and find it doesn't really apply), sometimes it would be a hit.
Nice to get detals about tom
Tarun Babu, December 23, 2003 - 1:25 am UTC
Hi tom,
Its nice to see this thread in asktom.oracle.com. You really inspired me a lot. I am follwoing this site from the begining. From last two years I going to otn forums, posting questions, learning new things and helping people what ever I know in oracle.
The point what you mentioned is "How can Knowledge be stolen". Perfet. I wanted to share this with everyone, Please share your knowledge, whatever you know. That will increase the boundaries of our knowledge day by day.
What's your view tom?
Thanks.
Mentor
umesh, December 23, 2003 - 4:10 am UTC
Tom
Can you please share your mentor's name. really must be a GREAT GUY ( no pun )
Aaaah Mentor...
Tarry Singh, December 23, 2003 - 7:57 am UTC
Your next door neighbour could be your mentor, you could be your own mentor.
To be succesful in any business you gotta (be)...
[1] Smart
[2] Brainy(not necessarily a rocket scientist)
[3] Practice, practice, practice
[4] Try, try ,try
[5] fail, fail, fail
[6] succeed, succeed, succeed
[7]Remember not to repeat mistakes, ever.
Then you've got a formula working right for you.
That it.
Also about the DBA/Developer thingy...
Tarry, December 23, 2003 - 8:22 am UTC
The fact that developer's & dba's are on the same side is something which you tend to realize but thanks to reading and listening to what Tom's has written in his books and the daily reads that I do(as on all my machine's ASKTOM is my homepage)I have learnt to converse more sensibly to the developers.
It felt real great in the new job when the most experienced and feared developer and me were beginning to click on in a few weeks and strating to exchange ideas. The "over the wall" mentality is changing. I was able to (with tact) bring in ideas of how to start using the db's built in functionality instead of long generic code and we're seeing some good team work. When I go to work I leave my ego, whim's all behind.
It is not just that they "must"(I say should)work together but also to bridge the (ever growing) gap between the developer's and dba's/sa's. So there's lot's more to it than just getting bunch of "stuck up" guys to work together.
whats your b'day?
Neeraj :), May 13, 2004 - 8:57 am UTC
Hi TOM WHEN YOU CAME TO THIS SWEET WORLD?
AND Thanx to you ,GOd ......
An finally thanx to that Mentor.........
Still there are lot of nice guys in this selfish world...
Recommended books
Ramesh, January 26, 2005 - 5:57 am UTC
Tom,
You recommend "Transaction Processing by Jim Gray, Andreas Reuter" book.
There is a newer book "Transactional Information Systems: Theory, Algorithms, and the Practice of Concurrency Control by Gerhard Weikum, Gottfried Vossen" out in the market which is more recent (2001). Do you recommend that one too?
Or is it enough if we study Jim Gray's book for learning about Transaction processing :)
Thanks,
Ramesh.
January 26, 2005 - 9:05 am UTC
I haven't read it, I cannot comment on it.
The funny thing is -- the concepts behind Transaction Processing are sort of like the concepts behind good programming.
They haven't changed. We just seem to be forgetting what they are over time :(
Great advice!.....Interesting thread
Robert, February 08, 2005 - 10:58 am UTC
Tom,
Thanks for sharing this info about carreer and you philosophy on learning, etc.
.....Interesting analogy, Mr. Alberto Dell'Era, ("Research Scientist")......
Thanks again, Tom, for all your help!
Robert
Next Tom Kyte? Not So Fast
A reader, June 29, 2005 - 4:43 pm UTC
Let us hope there is no need for the next Tom anytime soon. A Dick or Harry or whatever would be okay, but we need this Tom for a long time!
Tricky Query
Indranil, May 30, 2006 - 4:41 am UTC
Hi Tom,
1. suppose there is a table like create table
orderby(name varchar2(50),loyalty_level varchar2(50));
2. There are 3 distinct values for the column
loyalty_level like
PAST_GUEST_GOLD,
REGULAR_GUEST and
PAST_GUEST_PLATINUM.
3. Now can we write a query so that PAST_GUEST_PLATINUM will come first,then PAST_GUEST_GOLD,then REGULAR_GUEST ???
<<Insert statements are
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'ALANHERBERT,MILLER', 'PAST_GUEST_PLATINUM');
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'ALICEMERCEDES,WILLIAMS', 'PAST_GUEST_PLATINUM');
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'AMY,JAHNKE', 'PAST_GUEST_PLATINUM');
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'ARTHUR,BUTLER JR', 'PAST_GUEST_PLATINUM');
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'BETTY LOU,SAVAGE', 'PAST_GUEST_PLATINUM');
commit;
---------
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'AALIYAH,POWELL', 'REGULAR_GUEST');
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'AARON,BELLEFEUILLE', 'REGULAR_GUEST');
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'AARON,PASCUAL', 'REGULAR_GUEST');
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'AARONKENNETH,AKERS', 'REGULAR_GUEST');
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'ABANIQUEMONIQUE,ROBERTS', 'REGULAR_GUEST');
commit;
----------
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'AARON,PRELAK', 'PAST_GUEST_GOLD');
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'AARON,WEBB', 'PAST_GUEST_GOLD');
INSERT INTO ORDERBY ( NAME, LOYALTY_LEVEL ) VALUES (
'AARONANTHONY,LOPEZ', 'PAST_GUEST_GOLD');
commit;
--------
Thanks and regards
Indranil
May 30, 2006 - 9:31 am UTC
order by decode( loyalty_level, 'PAST_GUEST_PLATINUM', 1,
'PAST_GUEST_GOLD', 2,
'REGULAR_GUEST', 3 )
Thanks a lot,
indranil, June 01, 2006 - 11:42 pm UTC
Suppose we have a table like
Create table gs( X NUMBER,Y VARCHAR2(2));
INDRA>select * from gs;
X Y
---------- ------------
1 s1
2 s2
Now,can you please help me for the PL/SQL block below -
INDRA>
declare
v varchar2(3200):='s1,s2'||',';--:control.conditions||',';
sn varchar2(3200);
Type ArrayType Is Table of Varchar2(200)
Index by Binary_integer;
l number;n number;
S ArrayType;
Begin
l:=length(v)-length(replace(v,',',''));
for i in 1..l
loop
n:=instr(v,',',1,1);
s(i):=''''||substr(v,1,n-1)||'''';
v:=substr(v,n+1);
end loop;
For i in 1..l
loop
sn:=sn||','||s(i);
end loop;
sn:=substr(sn,2);
dbms_output.put_line('string= '||sn);
for j in (select x from gs where y in (sn))
loop
dbms_output.put_line('x= '||j.x);
end loop;
End ;
/
string= 's1','s2'
PL/SQL procedure successfully completed.
why the cursor is not working ?
(retriving no row selected)
But when we are using sql we get
INDRA>select x from gs where y in ('s1','s2');
X
----------
1
2
Is there any alternative way ?
Note:It was actually a Form 6i Trigger code
for the control item :control.conditions,when
user would enter the conditions like s1,s2,s3,...
and we have to select something from another database
table.
indranil1.das@tcs.com
June 02, 2006 - 10:19 am UTC
how about you LOOK IN THE OTHER PLACE you put this same exact question.
A reader, November 11, 2011 - 9:31 am UTC
Hi Tom,
What are the first most important at least 3 FEATURES in each of the below case that triggered ORACLE to change the name
1.9i to 10G
2.11G to 12C
(I to G and G to C)
Thanks !!
November 11, 2011 - 10:55 am UTC
opinion on:
9i to 10g, the word internet become boring, much like the word "webmaster" fell out of use. Everything was going internet by then.
10g was about grid computing, that was the message. Clustering, redundancy, the ability to go big. 10g was the first self contained bit of software from Oracle that had everything out of the box (database, clusterware, filesystem software) to do grid without any 3rd party help.
Now, grid is pretty much accepted, commonplace. Cloud computing is 'cool'. So the C is for the cool cloud. And we have the machines for the "cloud" - exadata, eaxlogic, exaltics, database appliance and so on.
opinion off