<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8823631913168435662</id><updated>2011-07-07T18:59:01.077-07:00</updated><category term='plsql'/><category term='apex'/><category term='solution'/><category term='IOT'/><category term='mysql'/><category term='news'/><category term='php'/><category term='bug'/><category term='vnc'/><category term='query'/><category term='oracle'/><category term='ora-14402'/><category term='first computer bug'/><category term='sql tips'/><category term='queries'/><category term='excel'/><category term='bing'/><category term='sql functions'/><category term='web2.0'/><category term='sql'/><category term='utf8'/><category term='search'/><category term='unicode'/><category term='automatic table partitioning'/><category term='table compression'/><category term='htmldb'/><category term='table partitioning'/><category term='google'/><category term='database'/><title type='text'>Girish's Technical Blog</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>17</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-3120615559600508163</id><published>2010-01-12T01:57:00.000-08:00</published><updated>2010-01-12T01:59:48.139-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='query'/><title type='text'>Query to find unix process id for the session</title><content type='html'>The query is below. To find the process id from any normal user, below grant's are required.&lt;br /&gt;conn / as sysdba&lt;br /&gt;grant select on v_$session to scott;&lt;br /&gt;grant select on v_$process to scott;&lt;br /&gt;grant select on v_$mystat to scott;&lt;br /&gt;&lt;br /&gt;conn scott/tiger&lt;br /&gt;SELECT p.spid&lt;br /&gt;FROM v$session s, v$process p, (select sid from v$mystat where rownum=1) m&lt;br /&gt;WHERE s.paddr = p.addr&lt;br /&gt;and s.sid = m.sid;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-3120615559600508163?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/3120615559600508163/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=3120615559600508163' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/3120615559600508163'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/3120615559600508163'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2010/01/query-to-find-unix-process-id-for.html' title='Query to find unix process id for the session'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-1438806751077456383</id><published>2009-09-03T22:22:00.000-07:00</published><updated>2009-09-03T22:23:57.493-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='first computer bug'/><category scheme='http://www.blogger.com/atom/ns#' term='bug'/><title type='text'>The first "computer bug" !</title><content type='html'>&lt;b style="font-style: italic;"&gt;The First "Computer Bug"&lt;/b&gt;&lt;span style="font-style: italic;"&gt; Moth found trapped between points at Relay # 70, Panel F, of the Mark II Aiken Relay Calculator while it was being tested at Harvard University, 9 September 1945.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://en.wikipedia.org/wiki/File:H96566k.jpg"&gt;http://en.wikipedia.org/wiki/File:H96566k.jpg&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-1438806751077456383?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/1438806751077456383/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=1438806751077456383' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/1438806751077456383'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/1438806751077456383'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2009/09/first-computer-bug.html' title='The first &quot;computer bug&quot; !'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-343637767964475479</id><published>2009-08-24T01:40:00.000-07:00</published><updated>2009-08-24T01:43:51.968-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bing'/><category scheme='http://www.blogger.com/atom/ns#' term='search'/><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>What does "search" mean to google ?</title><content type='html'>"Bing".. yes.. look at below image..&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RAOZxCOe-oU/SpJSXCFcK0I/AAAAAAAAGVI/QwuH0Y-JJG0/s1600-h/search.JPG"&gt;&lt;img style="cursor: pointer; width: 399px; height: 400px;" src="http://1.bp.blogspot.com/_RAOZxCOe-oU/SpJSXCFcK0I/AAAAAAAAGVI/QwuH0Y-JJG0/s400/search.JPG" alt="" id="BLOGGER_PHOTO_ID_5373447861056580418" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;interesting...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-343637767964475479?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/343637767964475479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=343637767964475479' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/343637767964475479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/343637767964475479'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2009/08/what-does-search-mean-to-google.html' title='What does &quot;search&quot; mean to google ?'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_RAOZxCOe-oU/SpJSXCFcK0I/AAAAAAAAGVI/QwuH0Y-JJG0/s72-c/search.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-2585567391703299412</id><published>2009-06-25T22:17:00.000-07:00</published><updated>2009-06-25T22:41:16.744-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ora-14402'/><category scheme='http://www.blogger.com/atom/ns#' term='solution'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Updating partition key column in oracle</title><content type='html'>When you try to update the partitioned key column, in a partitioned table, oracle throws error 14402.&lt;br /&gt;&lt;br /&gt;Ex:&lt;br /&gt;Table "test"is partitioned by date_id.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;update test set date_id = sysdate;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;ERROR at line 1:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;ORA-14402: updating partition key column would cause a partition change&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Solution:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;alter table test enable row movement;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;update test set date_id = sysdate;&lt;br /&gt;alter table test disable  movement;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;br /&gt;After the above sql executed, the triggers associated with table "test" will be in invalid state. You must recompile them.&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Check the invalid objects using..&lt;br /&gt;&lt;span style="font-style: italic;"&gt;select object_name, object_type, status from user_objects where status='INVALID';&lt;/span&gt;&lt;br /&gt;&lt;tt&gt;&lt;br /&gt;&lt;/tt&gt;Below sql gets the trigger source..&lt;br /&gt;&lt;span style="font-style: italic;"&gt;set long 9999&lt;/span&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;select trigger_name, status, trigger_body from user_triggers where table_name='TEST';&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-2585567391703299412?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/2585567391703299412/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=2585567391703299412' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/2585567391703299412'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/2585567391703299412'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2009/06/updating-partition-key-column-in-oracle.html' title='Updating partition key column in oracle'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-2634916096192008121</id><published>2009-03-03T03:18:00.000-08:00</published><updated>2009-03-03T03:22:13.800-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vnc'/><title type='text'>Choosing desktop for vnc in linux</title><content type='html'>twm is the default window manager. This can be changed by modifying the $HOME/.vnc/xstartup file.&lt;br /&gt;You will see below line in xstartup&lt;br /&gt;twm &amp;&lt;br /&gt;&lt;br /&gt;For KDE, change above line to&lt;br /&gt;startkde &amp;&lt;br /&gt;&lt;br /&gt;For Gnome, change to&lt;br /&gt;exec gnome-session &amp;&lt;br /&gt;&lt;br /&gt;For choosing fvwm,&lt;br /&gt;/opt/fvwm/bin/fvwm2 &amp;&lt;br /&gt;&lt;br /&gt;Then kill and start the vncserver/s again.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-2634916096192008121?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/2634916096192008121/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=2634916096192008121' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/2634916096192008121'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/2634916096192008121'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2009/03/choosing-desktop-for-vnc-in-linux.html' title='Choosing desktop for vnc in linux'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-5666306900032323236</id><published>2008-07-20T08:03:00.000-07:00</published><updated>2008-07-20T08:36:03.351-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='utf8'/><category scheme='http://www.blogger.com/atom/ns#' term='mysql'/><category scheme='http://www.blogger.com/atom/ns#' term='excel'/><category scheme='http://www.blogger.com/atom/ns#' term='unicode'/><category scheme='http://www.blogger.com/atom/ns#' term='php'/><title type='text'>PHP code to insert unicode data in excel to mysql database</title><content type='html'>I struggled to get this working.. So sharing the working version of code.&lt;br /&gt;&lt;br /&gt;I had a excel file Book1.xls with unicode (samskrit words) data in two columns.  My requirement was to insert the data into a mysql table created using below SQL&lt;br /&gt;CREATE TABLE utable&lt;br /&gt;(&lt;br /&gt;word1   varchar(64),&lt;br /&gt;word2   varchar(64)&lt;br /&gt;) CHARACTER SET utf8&lt;br /&gt;COLLATE utf8_general_ci ;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Steps:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1. Get Book1.txt -&gt; Save excel file as "Unicode Text". Saving as csv, did not save unicode columns correctly.&lt;br /&gt;2. Enable/install mbstring extension in php. See if you have php_mbstring.dll in php/ext directory. It was there by default for me. To enable, just search for "extension=php_mbstring.dll" in php.ini and uncomment the line.&lt;br /&gt;3. Here is the php code which worked for me :)&lt;br /&gt;&lt;br /&gt;&lt;table border="1" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;&lt;br /&gt;&amp;lt;!-- xml version="1.0" encoding="UTF-8" --&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD Xhtml 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&amp;lt;head&amp;gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;h2&amp;gt;Hello&amp;lt;/h2&amp;gt;&lt;br /&gt;&amp;lt;?php&lt;br /&gt;header ('Content-type: text/html; charset=utf-8');&lt;br /&gt;$db = mysql_connect( "localhost", "root", "c1test" );&lt;br /&gt;mysql_select_db( "sblib", $db);&lt;br /&gt;mysql_query( "SET NAMES 'UTF8'", $db );&lt;br /&gt;mysql_query( "SET CHARACTER SET 'utf8'", $db );&lt;br /&gt;mysql_query( "SET collation_connection = 'utf8_general_ci'", $db );&lt;br /&gt;&lt;br /&gt;$data = file_get_contents( "Book1.txt");&lt;br /&gt;$data = mb_convert_encoding($data, "UTF-8", "UTF-16LE");&lt;br /&gt;$lines = mb_split("\n", $data);&lt;br /&gt;&lt;br /&gt;foreach ($lines as $ud)&lt;br /&gt;{&lt;br /&gt;if ( $ud )&lt;br /&gt;{&lt;br /&gt;  $arr = mb_split(" ", $ud);&lt;br /&gt;  //echo "$arr[0]==$arr[1]";&lt;br /&gt;  $result = mysql_query("INSERT INTO utable(word1, word2) values ('$arr[0]', '$arr[1]')");&lt;br /&gt;  echo "&amp;lt;br&amp;gt;";&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;$result = mysql_query("SELECT word1, word2 FROM utable");&lt;br /&gt;while($row = mysql_fetch_row($result))&lt;br /&gt;{&lt;br /&gt;  echo "Name : $row[0]; $row[1]&amp;lt;br&amp;gt;";&lt;br /&gt;}&lt;br /&gt;?&amp;gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;References:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.joelonsoftware.com/articles/Unicode.html"&gt;http://www.joelonsoftware.com/articles/Unicode.html&lt;/a&gt; -- Must read.&lt;br /&gt;&lt;a href="http://www.nicknettleton.com/zine/php/php-utf-8-cheatsheet"&gt;http://www.nicknettleton.com/zine/php/php-utf-8-cheatsheet&lt;/a&gt;&lt;br /&gt;&lt;a href="http://us.php.net/manual/en/ref.mbstring.php#50298"&gt;http://us.php.net/manual/en/ref.mbstring.php#50298&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-5666306900032323236?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/5666306900032323236/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=5666306900032323236' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/5666306900032323236'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/5666306900032323236'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2008/07/php-code-to-insert-unicode-data-in.html' title='PHP code to insert unicode data in excel to mysql database'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-3357612046294255890</id><published>2008-06-29T22:41:00.000-07:00</published><updated>2008-06-29T23:01:12.808-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='news'/><title type='text'>Bill Gates logs out of Microsoft and logs into philanthropy</title><content type='html'>On 27th of Jun 2008, Bill gates bids adieu to the company he built for last 33 years, Microsoft. A big loss to technology sector, but a bigger gain to philanthropy.&lt;br /&gt;Bill Gates owns worlds biggest, 100 billion dollar philanthropic organization, Bill and Melinda Gates Foundation, where he will work full time from now..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-3357612046294255890?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/3357612046294255890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=3357612046294255890' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/3357612046294255890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/3357612046294255890'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2008/06/bill-gates-logs-out-of-microsoft-and.html' title='Bill Gates logs out of Microsoft and logs into philanthropy'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-5073339979322212710</id><published>2008-06-20T00:01:00.000-07:00</published><updated>2008-06-20T00:11:49.395-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='google'/><title type='text'>Google docs is offline now!</title><content type='html'>Now we can view and edit documents offline, without an active internet connection. This is really cool. You need to have google gears installed for this and should not use it on shared computers.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://docs.google.com"&gt;http://docs.google.com&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-5073339979322212710?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/5073339979322212710/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=5073339979322212710' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/5073339979322212710'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/5073339979322212710'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2008/06/google-docs-is-offline-now.html' title='Google docs is offline now!'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-6424935057468178507</id><published>2008-06-18T04:29:00.000-07:00</published><updated>2008-06-18T05:18:55.184-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='plsql'/><category scheme='http://www.blogger.com/atom/ns#' term='sql tips'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><category scheme='http://www.blogger.com/atom/ns#' term='sql functions'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>SQL functions in oracle</title><content type='html'>Below is list of all functions built into oracle database in release 11.1&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;br /&gt;Numeric Functions:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions002.htm#i81802"&gt;ABS&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions003.htm#i76693"&gt;ACOS&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions008.htm#i1056765"&gt;ASIN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions009.htm#i76792"&gt;ATAN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions010.htm#i76816"&gt;ATAN2&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions014.htm#i98000"&gt;BITAND&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions017.htm#i97801"&gt;CEIL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions030.htm#i77138"&gt;COS&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions031.htm#i82384"&gt;COSH&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions051.htm#i1017093"&gt;EXP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions060.htm#i77449"&gt;FLOOR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions079.htm#i83932"&gt;LN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions082.htm#i84140"&gt;LOG&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions090.htm#i77996"&gt;MOD&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions092.htm#i1273120"&gt;NANVL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions114.htm#i78493"&gt;POWER&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions137.htm#i1300767"&gt;REMAINDER&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions139.htm#i78633"&gt;ROUND (number)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions149.htm#i90056"&gt;SIGN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions150.htm#i78804"&gt;SIN&lt;/a&gt;,  &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions151.htm#i78829"&gt;SINH&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions153.htm#i1009289"&gt;SQRT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions178.htm#i79242"&gt;TAN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions179.htm#i79267"&gt;TANH&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions204.htm#i79729"&gt;TRUNC (number)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions218.htm#i1001630"&gt;WIDTH_BUCKET&lt;/a&gt;  &lt;!-- class="sect3" --&gt;&lt;br /&gt;&lt;br /&gt;&lt;a name="SQLRF20032" id="SQLRF20032"&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;Character Functions:&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions007.htm#i1152151"&gt;ASCII&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions019.htm#i76965"&gt;CHR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions026.htm#i77004"&gt;CONCAT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions067.htm#i77574"&gt;INITCAP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions070.htm#i77598"&gt;INSTR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions078.htm#i77725"&gt;LENGTH&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions083.htm#i1043828"&gt;LOWER&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions084.htm#i1371196"&gt;LPAD&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions085.htm#i77875"&gt;LTRIM&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions099.htm#i89841"&gt;NLS_INITCAP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions100.htm#i78373"&gt;NLS_LOWER&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions101.htm#i78399"&gt;NLSSORT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions102.htm#i89889"&gt;NLS_UPPER&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions133.htm#i1239887"&gt;REGEXP_INSTR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions134.htm#i1305521"&gt;REGEXP_REPLACE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions135.htm#i1239858"&gt;REGEXP_SUBSTR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions138.htm#i78608"&gt;REPLACE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions144.htm#i78723"&gt;RPAD&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions145.htm#i1018967"&gt;RTRIM&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions152.htm#i78853"&gt;SOUNDEX&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions166.htm#i87066"&gt;SUBSTR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions200.htm#i1501659"&gt;TRANSLATE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions202.htm#i1018806"&gt;TREAT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions203.htm#i79689"&gt;TRIM&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions210.htm#i90176"&gt;UPPER&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;NLS Character Functions&lt;/span&gt;:&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions096.htm#i85356"&gt;NLS_CHARSET_DECL_LEN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions097.htm#i78230"&gt;NLS_CHARSET_ID&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions098.htm#i78300"&gt;NLS_CHARSET_NAME&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Datetime Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions004.htm#i76717"&gt;ADD_MONTHS&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions037.htm#i999792"&gt;CURRENT_DATE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions038.htm#i999217"&gt;CURRENT_TIMESTAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions041.htm#i1327612"&gt;DBTIMEZONE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions052.htm#i1017161"&gt;EXTRACT (datetime)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions061.htm#i999803"&gt;FROM_TZ&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions074.htm#i83733"&gt;LAST_DAY&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions081.htm#i999873"&gt;LOCALTIMESTAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions091.htm#i78039"&gt;MONTHS_BETWEEN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions094.htm#i1004085"&gt;NEW_TIME&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions095.htm#i78154"&gt;NEXT_DAY&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions105.htm#i88258"&gt;NUMTODSINTERVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions106.htm#i89943"&gt;NUMTOYMINTERVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions140.htm#i78665"&gt;ROUND (date)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions147.htm#i999827"&gt;SESSIONTIMEZONE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions171.htm#i999831"&gt;SYS_EXTRACT_UTC&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions176.htm#i79216"&gt;SYSDATE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions177.htm#i999835"&gt;SYSTIMESTAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions184.htm#i1009324"&gt;TO_CHAR (datetime)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions197.htm#i999843"&gt;TO_TIMESTAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions198.htm#i999847"&gt;TO_TIMESTAMP_TZ&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions188.htm#i1014645"&gt;TO_DSINTERVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions199.htm#i999851"&gt;TO_YMINTERVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions205.htm#i79761"&gt;TRUNC (date)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions206.htm#i1001830"&gt;TZ_OFFSET&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;General Comparison Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions062.htm#i77473"&gt;GREATEST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions077.htm#i77700"&gt;LEAST&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Conversion Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions006.htm#i1000190"&gt;ASCIISTR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions013.htm#i1002025"&gt;BIN_TO_NUM&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions016.htm#i1269136"&gt;CAST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions018.htm#i76940"&gt;CHARTOROWID&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions025.htm#i1000195"&gt;COMPOSE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions027.htm#i77037"&gt;CONVERT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions043.htm#i1000217"&gt;DECOMPOSE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions066.htm#i1023950"&gt;HEXTORAW&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions105.htm#i88258"&gt;NUMTODSINTERVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions106.htm#i89943"&gt;NUMTOYMINTERVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions128.htm#i78517"&gt;RAWTOHEX&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions129.htm#i1006713"&gt;RAWTONHEX&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions142.htm#i78696"&gt;ROWIDTOCHAR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions143.htm#i1293762"&gt;ROWIDTONCHAR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions146.htm#BABEHBCB"&gt;SCN_TO_TIMESTAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions180.htm#BABFJHAD"&gt;TIMESTAMP_TO_SCN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions181.htm#i1279235"&gt;TO_BINARY_DOUBLE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions182.htm#i1272891"&gt;TO_BINARY_FLOAT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions183.htm#i1006717"&gt;TO_CHAR (character)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions184.htm#i1009324"&gt;TO_CHAR (datetime)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions185.htm#i79330"&gt;TO_CHAR (number)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions186.htm#i1006718"&gt;TO_CLOB&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions187.htm#i1003589"&gt;TO_DATE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions188.htm#i1014645"&gt;TO_DSINTERVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions189.htm#i79464"&gt;TO_LOB&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions190.htm#i79496"&gt;TO_MULTI_BYTE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions191.htm#i1006719"&gt;TO_NCHAR (character)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions192.htm#i1006720"&gt;TO_NCHAR (datetime)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions193.htm#i1006721"&gt;TO_NCHAR (number)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions194.htm#i1006722"&gt;TO_NCLOB&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions195.htm#i79512"&gt;TO_NUMBER&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions188.htm#i1014645"&gt;TO_DSINTERVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions196.htm#i79556"&gt;TO_SINGLE_BYTE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions197.htm#i999843"&gt;TO_TIMESTAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions198.htm#i999847"&gt;TO_TIMESTAMP_TZ&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions199.htm#i999851"&gt;TO_YMINTERVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions199.htm#i999851"&gt;TO_YMINTERVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions201.htm#i79617"&gt;TRANSLATE ... USING&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions208.htm#i1000165"&gt;UNISTR&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;LOB Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions012.htm#i76871"&gt;BFILENAME&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions049.htm#i77384"&gt;EMPTY_BLOB, EMPTY_CLOB&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Collection Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions015.htm#i1269375"&gt;CARDINALITY&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions024.htm#i1271564"&gt;COLLECT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions115.htm#i1269496"&gt;POWERMULTISET&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions116.htm#i1399971"&gt;POWERMULTISET_BY_CARDINALITY&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions148.htm#i1269374"&gt;SET&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Hierarchical Function&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions168.htm#i1038266"&gt;SYS_CONNECT_BY_PATH&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Data Mining Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions020.htm#CJAJDDJB"&gt;CLUSTER_ID&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions021.htm#CJAIHHGE"&gt;CLUSTER_PROBABILITY&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions022.htm#CJACEBAB"&gt;CLUSTER_SET&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions055.htm#CJADFCIB"&gt;FEATURE_ID&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions056.htm#CJAHHFJE"&gt;FEATURE_SET&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions057.htm#CJAIFECA"&gt;FEATURE_VALUE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions117.htm#CJAFCHEG"&gt;PREDICTION&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions118.htm#CIHDDGEE"&gt;PREDICTION_BOUNDS&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions119.htm#CJABAJED"&gt;PREDICTION_COST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions120.htm#CJABHGHD"&gt;PREDICTION_DETAILS&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions121.htm#CJAJDHHD"&gt;PREDICTION_PROBABILITY&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions122.htm#CJAJGHAI"&gt;PREDICTION_SET&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;XML Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions005.htm#CIHEGIFE"&gt;APPENDCHILDXML&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions044.htm#CIHEGJCB"&gt;DELETEXML&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions046.htm#i1150333"&gt;DEPTH&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions053.htm#i1006712"&gt;EXTRACT (XML)&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions050.htm#i1006711"&gt;EXISTSNODE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions054.htm#i1131042"&gt;EXTRACTVALUE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions068.htm#CIHIJEBB"&gt;INSERTCHILDXML&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions069.htm#CIHICIAF"&gt;INSERTXMLBEFORE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions110.htm#i1150364"&gt;PATH&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions170.htm#i1180070"&gt;SYS_DBURIGEN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions174.htm#i1006716"&gt;SYS_XMLAGG&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions175.htm#i1004367"&gt;SYS_XMLGEN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions209.htm#i1134878"&gt;UPDATEXML&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions219.htm#i1286333"&gt;XMLAGG&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions220.htm#CIHHHACJ"&gt;XMLCAST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions221.htm#CIHFBEGB"&gt;XMLCDATA&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions222.htm#i1129374"&gt;XMLCOLATTVAL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions223.htm#CIHJIBJA"&gt;XMLCOMMENT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions224.htm#i1166713"&gt;XMLCONCAT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions225.htm#CIHFDJAA"&gt;XMLDIFF&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions226.htm#i1129193"&gt;XMLELEMENT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions227.htm#CIHDEFCD"&gt;XMLEXISTS&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions228.htm#i1172404"&gt;XMLFOREST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions229.htm#CIHCIIFA"&gt;XMLPARSE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions230.htm#CIHDAEEC"&gt;XMLPATCH&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions231.htm#CIHGJCBF"&gt;XMLPI&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions232.htm#CIHHFFGG"&gt;XMLQUERY&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions233.htm#CIHDAHBJ"&gt;XMLROOT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions234.htm#i1129570"&gt;XMLSEQUENCE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions235.htm#CIHDHGJD"&gt;XMLSERIALIZE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions236.htm#CIHGGHFB"&gt;XMLTABLE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions237.htm#i1130976"&gt;XMLTRANSFORM&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Encoding and Decoding Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions042.htm#i1017437"&gt;DECODE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions048.htm#i77278"&gt;DUMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions109.htm#i1235081"&gt;ORA_HASH&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions217.htm#i80071"&gt;VSIZE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;NULL-Related Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions023.htm#i1001341"&gt;COALESCE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions080.htm#i1479295"&gt;LNNVL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions104.htm#i1001340"&gt;NULLIF&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions107.htm#i91798"&gt;NVL&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions108.htm#i91806"&gt;NVL2&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Environment and Identifier Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions169.htm#i1038176"&gt;SYS_CONTEXT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions172.htm#i79194"&gt;SYS_GUID&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions173.htm#i1044156"&gt;SYS_TYPEID&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions207.htm#i79792"&gt;UID&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions211.htm#i79833"&gt;USER&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions212.htm#i79862"&gt;USERENV&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Aggregate Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions011.htm#i82074"&gt;AVG&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions024.htm#i1271564"&gt;COLLECT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions028.htm#i82637"&gt;CORR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions029.htm#i1293691"&gt;CORR_*&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions032.htm#i82697"&gt;COUNT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions033.htm#i1008854"&gt;COVAR_POP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions034.htm#i82820"&gt;COVAR_SAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions036.htm#i82886"&gt;CUME_DIST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions045.htm#i1064409"&gt;DENSE_RANK&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions058.htm#i1000901"&gt;FIRST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions063.htm#i1002035"&gt;GROUP_ID&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions064.htm#i77498"&gt;GROUPING&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions065.htm#i1001964"&gt;GROUPING_ID&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions073.htm#i1000905"&gt;LAST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions087.htm#i89072"&gt;MAX&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions088.htm#i1279886"&gt;MEDIAN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions089.htm#i1280029"&gt;MIN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions112.htm#i1000909"&gt;PERCENTILE_CONT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions113.htm#i1000913"&gt;PERCENTILE_DISC&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions111.htm#i1043951"&gt;PERCENT_RANK&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions126.htm#i1269223"&gt;RANK&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions136.htm#i85922"&gt;REGR_ (Linear Regression) Functions&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions154.htm#i1279891"&gt;STATS_BINOMIAL_TEST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions155.htm#i1333770"&gt;STATS_CROSSTAB&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions156.htm#i1279901"&gt;STATS_F_TEST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions157.htm#i1279906"&gt;STATS_KS_TEST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions158.htm#i1279911"&gt;STATS_MODE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions159.htm#i1279921"&gt;STATS_MW_TEST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions160.htm#i1335576"&gt;STATS_ONE_WAY_ANOVA&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions161.htm#i1279931"&gt;STATS_T_TEST_*&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions162.htm#i1279951"&gt;STATS_WSR_TEST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions163.htm#i89108"&gt;STDDEV&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions164.htm#i86639"&gt;STDDEV_POP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions165.htm#i86697"&gt;STDDEV_SAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions167.htm#i89126"&gt;SUM&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions214.htm#i87119"&gt;VAR_POP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions215.htm#i87169"&gt;VAR_SAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions216.htm#i89144"&gt;VARIANCE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Analytic Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions011.htm#i82074"&gt;AVG&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions028.htm#i82637"&gt;CORR&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions033.htm#i1008854"&gt;COVAR_POP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions034.htm#i82820"&gt;COVAR_SAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions032.htm#i82697"&gt;COUNT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions036.htm#i82886"&gt;CUME_DIST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions045.htm#i1064409"&gt;DENSE_RANK&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions058.htm#i1000901"&gt;FIRST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions059.htm#i83212"&gt;FIRST_VALUE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions072.htm#i1327527"&gt;LAG&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions073.htm#i1000905"&gt;LAST&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions075.htm#i83648"&gt;LAST_VALUE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions076.htm#i83834"&gt;LEAD&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions087.htm#i89072"&gt;MAX&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions089.htm#i1280029"&gt;MIN&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions103.htm#i85619"&gt;NTILE&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions111.htm#i1043951"&gt;PERCENT_RANK&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions112.htm#i1000909"&gt;PERCENTILE_CONT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions113.htm#i1000913"&gt;PERCENTILE_DISC&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions126.htm#i1269223"&gt;RANK&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions127.htm#i85800"&gt;RATIO_TO_REPORT&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions136.htm#i85922"&gt;REGR_ (Linear Regression) Functions&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions141.htm#i86310"&gt;ROW_NUMBER&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions163.htm#i89108"&gt;STDDEV&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions164.htm#i86639"&gt;STDDEV_POP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions165.htm#i86697"&gt;STDDEV_SAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions167.htm#i89126"&gt;SUM&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions214.htm#i87119"&gt;VAR_POP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions215.htm#i87169"&gt;VAR_SAMP&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions216.htm#i89144"&gt;VARIANCE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Object Reference Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions047.htm#i1152051"&gt;DEREF&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions086.htm#i77900"&gt;MAKE_REF&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions130.htm#i1009255"&gt;REF&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions131.htm#i1030787"&gt;REFTOHEX&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions213.htm#i79988"&gt;VALUE&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Model Functions&lt;/span&gt;&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions039.htm#i1297925"&gt;CV&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions071.htm#i1327518"&gt;ITERATION_NUMBER&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions123.htm#i1298026"&gt;PRESENTNNV&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions124.htm#i1297947"&gt;PRESENTV&lt;/a&gt;, &lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions125.htm#i1306001"&gt;PREVIOUS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;References:&lt;/span&gt;&lt;br /&gt;Oracle® Database SQL Language Reference 11g Release 1 (11.1)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-6424935057468178507?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/6424935057468178507/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=6424935057468178507' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/6424935057468178507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/6424935057468178507'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2008/06/sql-functions-in-oracle.html' title='SQL functions in oracle'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-3119086157007554240</id><published>2008-06-18T03:01:00.000-07:00</published><updated>2008-06-18T03:37:18.389-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='IOT'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Index organized tables (IOT) in oracle</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Introduction:&lt;/span&gt;&lt;br /&gt;In ordinary oracle tables data is stored as an unordered collection (or its heap organized). An index-organized table has a storage organization that is a variant of a primary B-tree.  The data is stored in a B-tree index structure in a primary key sorted manner. Besides storing the primary key column values of an index-organized table row, each index entry in the B-tree stores the non key column values as well.&lt;br /&gt;&lt;br /&gt;In an IOT table, changes to the table data, such as adding new rows, updating rows, or deleting rows, result only in updating the index. Because data rows are stored in the index, index-organized tables provide faster key-based access to table data for queries that involve exact match or range search or both.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Create statement for an IOT&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Just add "ORGANIZATION INDEX" clause to normal create table to create an IOT.&lt;br /&gt;&lt;br /&gt;Ex:&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;CREATE TABLE sample_iot(&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;       token                 CHAR(20),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;       doc_id                 NUMBER,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;       token_frequency NUMBER,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;       token_offsets       VARCHAR2(2000),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;       CONSTRAINT pk_admin_docindex PRIMARY KEY (token, doc_id)&lt;br /&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;ORGANIZATION INDEX ;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;When to use IOT:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Index organized tables are well suited for OLTP applications, where the queries and DML's are heavily primary key based.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;When not to use IOT&lt;/span&gt;:&lt;br /&gt;&lt;br /&gt;IOT tables are not effective when&lt;br /&gt;- There is heavy insert activity.&lt;br /&gt;- The table uses secondary indexes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-3119086157007554240?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/3119086157007554240/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=3119086157007554240' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/3119086157007554240'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/3119086157007554240'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2008/06/index-organized-tables-iot-in-oracle.html' title='Index organized tables (IOT) in oracle'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-287208812749302610</id><published>2008-05-28T01:34:00.000-07:00</published><updated>2008-05-28T03:11:18.909-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='table compression'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Table compression in oracle</title><content type='html'>Table compression in oracle database&lt;span class="bodycopy"&gt; helps to reduce the amount of disk space used by database tables and improve query performance (except DML's). The feature is very useful when the data is mostly read-only.&lt;br /&gt;&lt;br /&gt;The "COMPRESS" clause needs to be specified while creating tables to enable data compression.&lt;br /&gt;&lt;br /&gt;Ex:&lt;br /&gt;Below query creates a compressed table sale_data_history..&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;CREATE TABLE sales_data_history(&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    product_id   NUMBER,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    cust_id        NUMBER,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    sale_date     DATE,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    region         VARCHAR2(20)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;) COMPRESS;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We can also compress an existing table using ALTER TABLE..&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ALTER TABLE&lt;/span&gt;&lt;/span&gt;&lt;span class="bodycopy"&gt;&lt;span style="font-family:courier new;"&gt; sales_data_history MOVE COMPRESS;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The data compression can be specified at the partition level, if the table is partitioned.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;CREATE TABLE &lt;/span&gt;&lt;span class="bodycopy"  style="font-family:courier new;"&gt;sales_data_history&lt;/span&gt;&lt;br /&gt;&lt;span class="bodycopy"  style="font-family:courier new;"&gt;    product_id   NUMBER,&lt;br /&gt;   cust_id        NUMBER,&lt;br /&gt;   sale_date     DATE,&lt;br /&gt;   region         VARCHAR2(20)&lt;br /&gt;)&lt;/span&gt;&lt;span style="font-family:courier new;"&gt;COMPRESS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;PARTITION BY LIST (region)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;(&lt;br /&gt; PARTITION northwest VALUES ('NORTHWEST'),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  PARTITION southwest VALUES ('SOUTHWEST'),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  PARTITION northeast VALUES  ('NORTHEAST') NOCOMPRESS,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  PARTITION southeast VALUES ('SOUTHEAST'),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  PARTITION western VALUES ('WESTERN')&lt;br /&gt;);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Alternatively, you can just compress only specific partitions using&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ALTER TABLE sales_data_history&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;MOVE PARTITION northeast COMPRESS;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This option is quite useful when few partitions become read-only storing historical data.&lt;br /&gt;&lt;br /&gt;&lt;span class="bodycopy"&gt;Because data in compressed table is stored in fewer blocks, it results in less storage on disk and less memory usage in buffer cache. The queries on a compressed table will often complete more quickly, because they need to read fewer database blocks. But there is a overhead during data loading and executing DML's on a compressed table. So the usage of COMPRESS should be done after careful design.&lt;/span&gt;&lt;br /&gt;&lt;span class="bodycopy"&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-287208812749302610?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/287208812749302610/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=287208812749302610' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/287208812749302610'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/287208812749302610'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2008/05/table-compression-in-oracle.html' title='Table compression in oracle'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-418392706632976626</id><published>2008-05-20T03:40:00.000-07:00</published><updated>2008-05-25T05:41:02.639-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='table partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='queries'/><category scheme='http://www.blogger.com/atom/ns#' term='automatic table partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Table partitioning in oracle</title><content type='html'>Partitioning enables tables and indexes to be split into smaller, more manageable components and is a key requirement for any large database with high performance and high availability requirements.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Types&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;Range&lt;/span&gt;&lt;br /&gt;Range partitioning maps data to partitions based on ranges of partition key values that you establish for each partition.&lt;br /&gt;&lt;br /&gt;Ex:&lt;pre space="preserve" class="oac_no_warn"&gt;&lt;br /&gt;CREATE TABLE salestable&lt;br /&gt;(&lt;br /&gt; s_productid    NUMBER,&lt;br /&gt; s_saledate     DATE,&lt;br /&gt; s_custid       NUMBER,&lt;br /&gt; s_totalprice   NUMBER,&lt;br /&gt; s_region       VARCHAR2(20)&lt;br /&gt;)&lt;br /&gt;PARTITION BY RANGE(s_saledate)&lt;br /&gt;(&lt;br /&gt;PARTITION sal03q1 VALUES LESS THAN (TO_DATE('01-APR-2003', 'DD-MON-YYYY')),&lt;br /&gt;PARTITION sal03q2 VALUES LESS THAN (TO_DATE('01-JUL-2003', 'DD-MON-YYYY')),&lt;br /&gt;PARTITION sal03q3 VALUES LESS THAN (TO_DATE('01-OCT-2003', 'DD-MON-YYYY')),&lt;br /&gt;PARTITION sal03q4 VALUES LESS THAN (TO_DATE('01-JAN-2004', 'DD-MON-YYYY'))&lt;br /&gt;);&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Hash&lt;/span&gt;&lt;br /&gt;Hash partitioning maps data to partitions based on a hashing algorithm that evenly distributes rows among partitions, giving partitions approximately the same size.&lt;br /&gt;&lt;br /&gt;Ex:&lt;pre space="preserve" class="oac_no_warn"&gt;&lt;br /&gt;CREATE TABLE salestable&lt;br /&gt;(&lt;br /&gt; s_productid    NUMBER,&lt;br /&gt; s_saledate     DATE,&lt;br /&gt; s_custid       NUMBER,&lt;br /&gt; s_totalprice   NUMBER,&lt;br /&gt; s_region       VARCHAR2(20)&lt;br /&gt;)&lt;br /&gt;PARTITION BY HASH(s_region)&lt;br /&gt;PARTITIONS 10;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;List&lt;/span&gt;&lt;br /&gt;List partitioning enables you to explicitly control how rows map to partitions by specifying a list of discrete values in the description for each partition.&lt;br /&gt;&lt;br /&gt;Ex:&lt;pre space="preserve" class="oac_no_warn"&gt;&lt;br /&gt;CREATE TABLE salestable&lt;br /&gt;(&lt;br /&gt; s_productid    NUMBER,&lt;br /&gt; s_saledate     DATE,&lt;br /&gt; s_custid       NUMBER,&lt;br /&gt; s_totalprice   NUMBER,&lt;br /&gt; s_region       VARCHAR2(20)&lt;br /&gt;)&lt;br /&gt;PARTITION BY LIST(s_region)&lt;br /&gt;(&lt;br /&gt;PARTITION q1_northwest VALUES ('OR', 'WA'),&lt;br /&gt;PARTITION q1_southwest VALUES ('AZ', 'UT', 'NM'),&lt;br /&gt;PARTITION q1_northeast VALUES  ('NY', 'VM', 'NJ'),&lt;br /&gt;PARTITION q1_southeast VALUES ('FL', 'GA'),&lt;br /&gt;PARTITION q1_northcentral VALUES ('SD', 'WI'),&lt;br /&gt;PARTITION q1_southcentral VALUES ('OK', 'TX')&lt;br /&gt;);&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Composite&lt;/span&gt;&lt;br /&gt;Composite partitioning is a combination of two partitioning methods to further divide the data into sub-partitions. The table is initially partitioned by the first data distribution method and then each partition is sub-partitioned by the second data distribution method. The following composite partitions are available:&lt;br /&gt;Range-Hash, Range-List, Range-Range, List-Range, List-List and List-Hash.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Interval&lt;br /&gt;&lt;/span&gt;The "INTERVAL" clause of the "CREATE TABLE" statement establishes interval partitioning for the table. You must specify at least one range partition using the "PARTITION" clause. The range partitioning key value determines the high value of the range partitions, which is called the transition point, and the database automatically creates interval partitions for data beyond that transition point. The lower boundary of every interval partition is the non-inclusive upper boundary of the previous range or interval partition. This is a very useful 11g feature.&lt;br /&gt;&lt;br /&gt;Ex:&lt;br /&gt;The below query will automatically create a partition every month.&lt;br /&gt;&lt;pre space="preserve" class="oac_no_warn"&gt;CREATE TABLE interval_sales&lt;br /&gt;(&lt;br /&gt; prod_id        NUMBER(6),&lt;br /&gt; cust_id        NUMBER,&lt;br /&gt; time_id        DATE,&lt;br /&gt; channel_id     CHAR(1),&lt;br /&gt; promo_id       NUMBER(6),&lt;br /&gt; quantity_sold  NUMBER(3),&lt;br /&gt; amount_sold    NUMBER(10,2)&lt;br /&gt;)&lt;br /&gt;PARTITION BY RANGE (time_id)&lt;br /&gt;INTERVAL(NUMTOYMINTERVAL(1, 'MONTH'))&lt;br /&gt;(PARTITION p_first VALUES LESS THAN ('01-JAN-2006');&lt;br /&gt;&lt;/pre&gt;&lt;span style="font-weight: bold;"&gt;REF Partitioning or Reference Partitioning&lt;/span&gt;&lt;br /&gt;Oracle Database 11g allows to partition a table by leveraging an existing parent-child relationship. The partitioning strategy of the parent table is inherited to its child table without the necessity to store the parent's partitioning key columns in the child table.&lt;br /&gt;&lt;br /&gt;Ex:&lt;br /&gt;Lets create a table orders which is range-partitioned on order_date. The reference-partitioned child table order_items is created with four partitions, Q1_2005, Q2_2005, Q3_2005, and Q4_2005, where each partition contains the order_items rows corresponding to orders in the respective parent partition.&lt;br /&gt;&lt;pre space="preserve" class="oac_no_warn"&gt;&lt;br /&gt;CREATE TABLE orders&lt;br /&gt;(&lt;br /&gt; order_id           NUMBER(12),&lt;br /&gt; order_date         TIMESTAMP WITH LOCAL TIME ZONE,&lt;br /&gt; order_mode         VARCHAR2(8),&lt;br /&gt; customer_id        NUMBER(6),&lt;br /&gt; order_status       NUMBER(2),&lt;br /&gt; order_total        NUMBER(8,2),&lt;br /&gt; sales_rep_id       NUMBER(6),&lt;br /&gt; promotion_id       NUMBER(6),&lt;br /&gt; CONSTRAINT orders_pk PRIMARY KEY(order_id)&lt;br /&gt;)&lt;br /&gt;PARTITION BY RANGE(order_date)&lt;br /&gt;(&lt;br /&gt; PARTITION Q1_2005 VALUES LESS THAN (TO_DATE('01-APR-2005','DD-MON-YYYY')),&lt;br /&gt; PARTITION Q2_2005 VALUES LESS THAN (TO_DATE('01-JUL-2005','DD-MON-YYYY')),&lt;br /&gt; PARTITION Q3_2005 VALUES LESS THAN (TO_DATE('01-OCT-2005','DD-MON-YYYY')),&lt;br /&gt; PARTITION Q4_2005 VALUES LESS THAN (TO_DATE('01-JAN-2006','DD-MON-YYYY'))&lt;br /&gt;);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CREATE TABLE order_items&lt;br /&gt;(&lt;br /&gt; order_id           NUMBER(12) NOT NULL,&lt;br /&gt; line_item_id       NUMBER(3)  NOT NULL,&lt;br /&gt; product_id         NUMBER(6)  NOT NULL,&lt;br /&gt; unit_price         NUMBER(8,2),&lt;br /&gt; quantity           NUMBER(8),&lt;br /&gt; CONSTRAINT order_items_fk&lt;br /&gt; FOREIGN KEY(order_id) REFERENCES orders(order_id)&lt;br /&gt;)&lt;br /&gt;PARTITION BY REFERENCE(order_items_fk);&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Virtual column based partitioning&lt;/span&gt;&lt;br /&gt;Virtual columns, a new functionalityin Oracle Database 11g, allows the partitioning key to be defined by an expression, using one or more existing columns of a table, and storing the expression as metadata only.&lt;br /&gt;&lt;br /&gt;Ex:&lt;br /&gt;Lets create sales table partitioned by range-range using a virtual column for the subpartitioning key. The virtual column calculates the total value of a sale by multiplying amount_sold and quantity_sold.&lt;br /&gt;&lt;pre space="preserve" class="oac_no_warn"&gt;&lt;br /&gt;CREATE TABLE sales&lt;br /&gt;(&lt;br /&gt;prod_id       NUMBER(6) NOT NULL,&lt;br /&gt;cust_id       NUMBER NOT NULL,&lt;br /&gt;time_id       DATE NOT NULL,&lt;br /&gt;channel_id    CHAR(1) NOT NULL,&lt;br /&gt;promo_id      NUMBER(6) NOT NULL,&lt;br /&gt;quantity_sold NUMBER(3) NOT NULL,&lt;br /&gt;amount_sold   NUMBER(10,2) NOT NULL,&lt;br /&gt;total_amount AS (quantity_sold * amount_sold)&lt;br /&gt;)&lt;br /&gt;PARTITION BY RANGE (time_id) INTERVAL (NUMTOYMINTERVAL(1,'MONTH'))&lt;br /&gt;SUBPARTITION BY RANGE(total_amount)&lt;br /&gt;SUBPARTITION TEMPLATE&lt;br /&gt;(&lt;br /&gt;SUBPARTITION p_small VALUES LESS THAN (1000),&lt;br /&gt;SUBPARTITION p_medium VALUES LESS THAN (5000),&lt;br /&gt;SUBPARTITION p_large VALUES LESS THAN (10000),&lt;br /&gt;SUBPARTITION p_extreme VALUES LESS THAN (MAXVALUE)&lt;br /&gt;)&lt;br /&gt;(PARTITION sales_before_2007 VALUES LESS THAN&lt;br /&gt;   (TO_DATE('01-JAN-2007','dd-MON-yyyy'))&lt;br /&gt;)&lt;br /&gt;ENABLE ROW MOVEMENT&lt;br /&gt;PARALLEL NOLOGGING;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;References:&lt;/span&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Partitioning in Oracle Database 11g: An Oracle White Paper&lt;/li&gt;&lt;li&gt;Oracle® Database VLDB and Partitioning Guide: 11g Release 1 (11.1)&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-418392706632976626?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/418392706632976626/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=418392706632976626' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/418392706632976626'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/418392706632976626'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2008/05/table-partitioning-in-oracle.html' title='Table partitioning in oracle'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-4769462089205910897</id><published>2008-01-23T22:53:00.000-08:00</published><updated>2008-01-24T01:26:58.025-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='htmldb'/><category scheme='http://www.blogger.com/atom/ns#' term='apex'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>A forum post on htmldb/apex url</title><content type='html'>http://forums.oracle.com/forums/thread.jspa?messageID=1013059&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-4769462089205910897?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/4769462089205910897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=4769462089205910897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/4769462089205910897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/4769462089205910897'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2008/01/forum-post-on-htmldbapex-url.html' title='A forum post on htmldb/apex url'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-3030139563230035473</id><published>2007-11-13T01:50:00.001-08:00</published><updated>2007-11-13T01:56:42.687-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><title type='text'>First AJAX page</title><content type='html'>Today i tried my first AJAX page. The best place to start with AJAX is&lt;br /&gt;&lt;a href="http://developer.mozilla.org/en/docs/AJAX:Getting_Started"&gt;http://developer.mozilla.org/en/docs/AJAX:Getting_Started&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Just copied the script to a html file in my apache htdocs directory, and loaded the page in a browser. Thats it..&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-3030139563230035473?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/3030139563230035473/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=3030139563230035473' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/3030139563230035473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/3030139563230035473'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2007/11/first-ajax-page.html' title='First AJAX page'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-271523044747063918</id><published>2007-11-07T01:41:00.000-08:00</published><updated>2007-11-07T01:54:01.847-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='web2.0'/><title type='text'>Starting on Web 2.0</title><content type='html'>I just started reading web2.0 concepts.&lt;br /&gt;Starting from the &lt;a href="http://www.programmableweb.com/reference"&gt;http://www.programmableweb.com/reference&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I'll write down whatever knowledge i acquire on web2.0 here.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-271523044747063918?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/271523044747063918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=271523044747063918' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/271523044747063918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/271523044747063918'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2007/11/starting-on-web-20.html' title='Starting on Web 2.0'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-6098725088202652107</id><published>2007-09-25T22:29:00.000-07:00</published><updated>2007-09-25T22:32:09.318-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Free space available for a user</title><content type='html'>Below query returns the free space available for the user in each tablespace.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;SELECT tablespace_name, sum(bytes)/1048576 Megs &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;FROM user_free_space&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;GROUP BY tablespace_name&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-6098725088202652107?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/6098725088202652107/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=6098725088202652107' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/6098725088202652107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/6098725088202652107'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2007/09/free-space-available-for-user.html' title='Free space available for a user'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8823631913168435662.post-193311842818271630</id><published>2007-09-25T03:18:00.000-07:00</published><updated>2007-09-25T03:29:56.472-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sql'/><category scheme='http://www.blogger.com/atom/ns#' term='database'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Query to find space usage of db objects</title><content type='html'>Below query displays the space consumed by every object user owns in MB.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;SELECT segment_name, sum(bytes)/1048576 Megs&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;FROM user_extents&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;WHERE segment_name like '%'&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;GROUP BY segment_name&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;If the table/index is partitioned, the the space consumed by each partition can be queried using below query.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;SELECT segment_name, partition_name, sum(bytes)/1048576 Megs&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;FROM user_extents&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;where segment_name='TABLE_NAME'&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;GROUP BY segment_name, partition_name&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;order by 3&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;/&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;More information can be found here.&lt;br /&gt;&lt;a href="http://download.oracle.com/docs/cd/B28359_01/server.111/b28310/schema007.htm"&gt;http://download.oracle.com/docs/cd/B28359_01/server.111/b28310/schema007.htm&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8823631913168435662-193311842818271630?l=tech-oracle.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tech-oracle.blogspot.com/feeds/193311842818271630/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8823631913168435662&amp;postID=193311842818271630' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/193311842818271630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8823631913168435662/posts/default/193311842818271630'/><link rel='alternate' type='text/html' href='http://tech-oracle.blogspot.com/2007/09/query-to-find-space-usage-of-db-objects.html' title='Query to find space usage of db objects'/><author><name>Girish Adiga</name><uri>http://www.blogger.com/profile/06330229558157059835</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_RAOZxCOe-oU/S53BjPmqajI/AAAAAAAAGzY/-MS2g79qmj4/S220/DSC00800.JPG'/></author><thr:total>0</thr:total></entry></feed>
