{"id":819,"date":"2017-05-24T22:37:57","date_gmt":"2017-05-25T01:37:57","guid":{"rendered":"http:\/\/wordpress.jpcorp.eti.br\/?p=819"},"modified":"2021-12-26T12:31:01","modified_gmt":"2021-12-26T15:31:01","slug":"oracle-aprendendo-sql-operacoes","status":"publish","type":"post","link":"https:\/\/wordpress.jpcorp.eti.br\/?p=819","title":{"rendered":"Oracle &#8211; Aprendendo SQL &#8211; Opera\u00e7\u00f5es com caracteres"},"content":{"rendered":"<h3>Lower, Upper e Initcap<\/h3>\n<p>Lower coloca toda string em minusculo, upper coloca toda escrita em mai\u00fasculo e initcap coloca o primeiro caractere em mai\u00fasculo:<\/p>\n<pre class=\"lang:plsql decode:true\">select \r\n    lower('JPCORP')\r\n    from dual;\r\n\r\nSa\u00edda do comando: jpcorp\r\n\r\nselect    \r\n    upper('jpcorp')\r\n    from dual;\r\n\r\nSa\u00edda do comando: JPCORP\r\n\r\nselect \r\n    initcap('jpcorp'),\r\n    initcap('JPCORP')\r\n    from dual;\r\n\r\nSa\u00edda do comando: Jpcorp\r\nSa\u00edda do comando: Jpcorp<\/pre>\n<p>&nbsp;<\/p>\n<h3>Concat<\/h3>\n<p>Objetivo do \"CONCAT\" \u00e9 concatenar, ou seja, juntar|LigarUmAoOutro exemplo abaixo:<\/p>\n<pre class=\"lang:plsql decode:true\">select \r\n    concat('Estou aprendendo',' SQL') AS \"CONCAT\"\r\n    from dual;\r\n\r\nSa\u00edda do comando: Estou aprendendo SQL<\/pre>\n<p>&nbsp;<\/p>\n<h3>Substr<\/h3>\n<p>O \"SUBSTR\" pega uma parte de uma string por posi\u00e7\u00e3o, exemplo abaixo pega depois da posi\u00e7\u00e3o 18 que \u00e9 depois de \"http:\/\/wordpress.\" \u00a0ent\u00e3o pega os 6 caracteres seguinte que s\u00e3o \"jpcorp\"<\/p>\n<pre class=\"lang:plsql decode:true\">select \r\n    substr('http:\/\/wordpress.jpcorp.eti.br',18,6) AS \"SUBSTR\"\r\n    from dual;\r\n\r\nSa\u00edda do comando: jpcorp<\/pre>\n<p>&nbsp;<\/p>\n<h3>Instr<\/h3>\n<p>O INSTR funciona da seguinte forma lendo o exemplo abaixo, tome como delimitador o \".\", pega desde o caractere \"1\", e para ao encontra o \"2\" (segundo) delimitador e retorna o total de caracteres:<\/p>\n<pre class=\"lang:plsql decode:true \">select\r\n    instr('http:\/\/wordpress.jpcorp.eti.br','.',1,2) AS \"INSTR\"\r\n    from dual;\r\n\r\nSa\u00edda do comando: 24<\/pre>\n<p>&nbsp;<\/p>\n<h3>Rpad<\/h3>\n<p>O RPAD tem objetivo de incrementar|adicionar ao lado R=RIGHT|DIREITO apos o caracter N, o exemplo abaixo adiciona o \"*\" ap\u00f3s o caractere de numero 10:<\/p>\n<pre class=\"lang:plsql decode:true\">select\r\n    rpad('#JPCORP##',10,'*') AS \"RPAD\" -- RPAD = RIGHT\r\n    from dual;\r\n\r\nSa\u00edda comando: #JPCORP##*<\/pre>\n<p>&nbsp;<\/p>\n<h3>Lpad<\/h3>\n<p>O LPAD \u00e9 igual ao anterior, porem L=LEFTH=ESQUERDA:<\/p>\n<pre class=\"lang:plsql decode:true\">select\r\n    lpad('#JPCORP##',10,'*') AS \"RPAD\" -- LPAD = LEFT\r\n    from dual;\r\n\r\nSa\u00edda comando: *#JPCORP##<\/pre>\n<p>&nbsp;<\/p>\n<h3>Trim<\/h3>\n<p>O TRIM remove do INICIO e FIM de uma string um caractere informado, exemplo abaixo remove os \"#\" do inicio e fim:<\/p>\n<pre class=\"lang:sh decode:true \">select \r\n    trim('#' from '#JPCORP##') AS \"TRIM\"\r\n    from dual;\r\n\r\nSa\u00edda do comando: JPCORP<\/pre>\n<p>&nbsp;<\/p>\n<h3>Replace<\/h3>\n<p>O REPLACE \u00e9\u00a0substituir uma palavra pela outra, no exemplo abaixo pega da tabela \"PRODUCTS\" a coluna \"NAME\" troca \"Science\" para \"Ci\u00eancia\" o \"PRODUCT_ID=1\" que possui o nome \"Modern Science\":<\/p>\n<pre class=\"lang:plsql decode:true\">select REPLACE(name, 'Science', 'Ci\u00eancia')\r\n    from products\r\n    where product_id = 1;\r\n\r\nSa\u00edda do comando: Modern Ci\u00eancia<\/pre>\n<p>&nbsp;<\/p>\n<p>Se tiver algo divergente, por favor me corrija. Obrigado!<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Lower, Upper e Initcap Lower coloca toda string em minusculo, upper coloca toda escrita em mai\u00fasculo e initcap coloca o primeiro caractere em mai\u00fasculo: select lower(&#8216;JPCORP&#8217;) from dual; Sa\u00edda do comando: jpcorp select upper(&#8216;jpcorp&#8217;) from dual; Sa\u00edda do comando: JPCORP select initcap(&#8216;jpcorp&#8217;), initcap(&#8216;JPCORP&#8217;) from dual; Sa\u00edda do comando: Jpcorp Sa\u00edda do comando: Jpcorp &nbsp; Concat&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[20,40,70],"tags":[29,71],"class_list":["post-819","post","type-post","status-publish","format-standard","hentry","category-banco-de-dados","category-oracle","category-sql","tag-oracle","tag-sql"],"_links":{"self":[{"href":"https:\/\/wordpress.jpcorp.eti.br\/index.php?rest_route=\/wp\/v2\/posts\/819","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.jpcorp.eti.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.jpcorp.eti.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.jpcorp.eti.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.jpcorp.eti.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=819"}],"version-history":[{"count":5,"href":"https:\/\/wordpress.jpcorp.eti.br\/index.php?rest_route=\/wp\/v2\/posts\/819\/revisions"}],"predecessor-version":[{"id":824,"href":"https:\/\/wordpress.jpcorp.eti.br\/index.php?rest_route=\/wp\/v2\/posts\/819\/revisions\/824"}],"wp:attachment":[{"href":"https:\/\/wordpress.jpcorp.eti.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=819"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.jpcorp.eti.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=819"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.jpcorp.eti.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=819"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}