Escolar Documentos
Profissional Documentos
Cultura Documentos
ComandosbsicosemSQLinsert,update,deleteeselect
Seguir@linhadecodigo
DESENVOLVIMENTO
FRONTEND
BANCODEDADOS
EMDESTAQUE
2.468
Pesquisar
LogIn/Cadastrese
HOME
3.164seguidores
TODOS
PUBLIQUE
Publicidade
DesenvolvimentoSQL
ComandosbsicosemSQLinsert,update,deletee
select
EsteartigovisaauxiliariniciantesquepretendeminiciarnouniversodeBancodeDadosutilizandoosprincipais
comandos:INSERT,UPDATE,DELETEeSELECT.
porHelbertCarvalhoTiago
871
139
39
132
16
Like
291
Nesseartigoveremoscomoincluir,excluireatualizarregistrosemumbancodedados.Nofinaldo
artigodescrevereiumaintroduosobresubconsultas.
INSERINDODADOS
REVISTASDEVMEDIA
OcomandoparainclusodedadosoINSERT,quepossuiaseguinteestrutura:
Listagem1:Sintaxedocomandoinsert
1
2
3
4
INSERTINTOnome_tabela(listadecampos)
VALUES(lista_dados)
OU
INSERTINTOnome_tabelaVALUES(lista_dados)
Onde:
.netMag121
Easy.netmag39
VERTODAS
Nome_tabela:nomedatabelanoqualserinseridoosdados.
ASSINE
Listadecampos:nomedascolunasquereceberoosvalores.
Listadados:valoresqueseroinseridosnatabela.Estescamposdevemestarnamesma
ordemdescritaemlistadecampos,todosseparadosporvrgula.Seforutilizadoumcomando
SELECTomesmodeveretornaramesmaquantidadedecolunascomosmesmostiposde
TOP10ARTIGOS
TOP10AUTORES
ComandosbsicosemSQLinsert,
update,deleteeselect
Exemplos:
HTMLBsico
Listagem2:Exemplosdocomandoinsert
MenuemCSSMenudropdownhorizontal
comHTML5eCSS3
Criandoumsistemadecadastroelogin
comPHPeMySql
Excel:Comoverificarseexistevalores
duplicados
CdigoparabackgroundHTMLeCSS
CriandoumMenuVerticalDropDowncom
CSSeHTML
CopiandodadoscomoRobocopy
TrabalhandocomDivemHTML
dadosespecificadosemlistadecampos.
1
2
3
INSERTINTOEMPREGADOS(CODIGO,NOME,SALARIO,SECAO)
VALUES(1,"HELBERTCARVALHO",1.500,1)
INSERTINTOEMPREGADOSVALUES(1,"HELBERTCARVALHO",1500,1)
Nasegundaopofoiomitidaadeclaraodoscampos.Essasintaxefuncionasomentesefor
repassadovaloresparatodasascolunas.
PodemostambmpassarvaloresatravsdeumcomandoSELECT,conformeabaixo:
Listagem3:Insertcomvaloresprovenientesdeumselect
1
2
3
4
INSERTINTOEMPREGADOS(CODIGO,NOME,SALARIO,SECAO)
SELECTCODIGO,NOME,SALARIO,SECAO
FROMEMPREGADOS_FILIAL
WHEREDEPARTAMENTO=2
10
NestecomandotodososempregadosdatabelaEMPREGADOS_FILIALforamcadastradosnatabela
EMPREGADOS.SeonomedoscamposnoforcitadonocomandoINSERT,oSELECTdever
Excel:ComparandoListas
VERTODOS
retornarvalorescompatveisparatodososcamposdisponveisnatabeladedestino.
ATUALIZANDODADOS
OcomandoparaatualizarregistrosUPDATE,quetemaseguintesintaxe:
http://www.linhadecodigo.com.br/artigo/2975/comandosbasicosemsqlinsertupdatedeleteeselect.aspx
1/6
23/03/2015
ComandosbsicosemSQLinsert,update,deleteeselect
Listagem4:Sintaxedocomandoupdate
1
2
3
UPDATEnome_tabela
SETCAMPO="novo_valor"
WHERECONDIO
Onde:
Nome_tabela:nomedatabelaquesermodificada
Campo:campoqueterseuvaloralterado
Novo_valor:valorquesubstituiroantigodadocadastradoemcampo
Where:Senoforinformado,atabelainteraseratualizada
Condio:regraqueimpecondioparaexecuodocomando
Exemplos:
Listagem5:Exemplosdeusodocomandoupdate
1
2
3
UPDATEDEPARTAMENTO
SETSALARIO=1000
WHERECODIGODEP=1
Notrechoacima,todososcolaboradoresquefazempartedodepartamento1terosalrioalterado
para1000.
Listagem6:Updateemmaisdeumcampo
1
2
3
UPDATEDEPARTAMENTO
SETNOME="HELBERTCARVALHO",SALARIO=1000
WHERECODIGO=1
Nesteexemploalteramosmaisdeumcampodeumavez.
PodemoscombinarocomandoSELECTcomUPDATE.Noexemploaseguir,osfuncionriosdemenor
salrioreceberoaumentode10%.
Listagem7:Outroexemplodeusodocomandoupdate
1
2
3
UPDATEEMPREGADOS
SETSALARIO=salario*1.1
WHERESALARIO=(SELECTMIN(salario)FROMEMPREGADOS)
OcomandoSELECTtambmpodeserutilizadonaatribuiodevaloraocampo:
Listagem8:Updatepassandoselectcomovalor
1
2
3
UPDATEEMPREGADOS
SETSALARIO=(SELECTMAX(salario)FROMEMPREGADOS)
WHEREDEPARTAMENTO=5
REMOVENDODADOS
OcomandoutilizadoparaapagardadosoDELETE.
Listagem9:Sintaxedocomandodelete
1
2
DELETEFROMnome_tabela
WHEREcondio
Onde:
Nome_tabela:nomedatabelaquesermodificada
Where:clusulaqueimpeumacondiosobreaexecuodocomando
Exemplo:
Listagem9:Exemplodeusodocomandodelete
1
2
DELETEFROMEMPREGADOS
WHERECODIGO=125
http://www.linhadecodigo.com.br/artigo/2975/comandosbasicosemsqlinsertupdatedeleteeselect.aspx
2/6
23/03/2015
ComandosbsicosemSQLinsert,update,deleteeselect
SubconsultasSQL
UmasubconsultaumainstruoSELECTaninhadadentrodeoutrainstruoSELECT,INSERT,
DELETEouUPDATE.Vejaabaixoalgunsexemplosdesintaxe:
Comparao[ANY|SOME|ALL](instruosql)
Expresso[NOT]IN(instruosql)
Expresso[NOT]EXISTS(instruosql)
OspredicadosANYeSOME,sinnimos,soutilizadospararecuperarregistronaconsultaprincipal
quesatisfaamacomparaocomqualquerregistrodasubconsulta.
TabelaA
XY
15
29
3 10
46
TabelaB
XY1042033011409
Exemplo:
Listagem11:Exemplodesubconsulta
1
2
SELECT*FROMA
WHEREY>ANY(SELECTYFROMBWHEREX>20)
Resultado:
XY
3 10
OsregistrosdatabelaAqueforemmaiordoquequalquerregistrodoresultadodasubconsultasero
selecionados.ReparequenenhumregistrodatabelaAmaiordoque11,noentanto,oterceiro
registromaiordoque9.
Vamosaoutroexemplo:
Listagem12:ExemplodesubconsultacomooperadorANY
1
SELECT*FROMAWHEREY>ANY(SELECTYFROMBWHEREX<40)
Resultado:
XY
15
29
3 10
46
Todososregistrosforamselecionadosporqueovalordeynoresultadodasubconsultaassume3,
quemenordoquetodososvaloresdeydatabelaA.SeutilizarmosoANYcomsinaldeigualdade
teremosomesmoresultadodaclusulaIN.Exemplo:
Listagem13:ExemplocomooperadorANYesinaldeigualdade
1
SELECT*FROMAWHEREY=ANY(SELECTYFROMB)
Resultado:
XY
29
OpredicadoANYtambmpodeserutilizadoemconjuntocomoscomandosUPDATEeDELETE.Veja
oexemplo:
Listagaem14:UpdateusandoooperadorANY
http://www.linhadecodigo.com.br/artigo/2975/comandosbasicosemsqlinsertupdatedeleteeselect.aspx
3/6
23/03/2015
1
2
3
ComandosbsicosemSQLinsert,update,deleteeselect
UPDATEA
SETX=X*10
WHEREY>ANY(SELECTYFROMBWHEREX<40)
Listagem15:DeleteusandoooperadorANY
1
2
DELETEFROMA
WHEREY>ANY(SELECTYFROMBWHEREX<40)
OpredicadoALLutilizadopararecuperarosregistrosdaconsultaprincipalquesatisfaama
comparaocomtodososregistrosrecuperadosnasubconsulta.Observeosexemplos:
Listagem16:ExemplodeselectcomoperadorANY
1
SELECT*FROMAWHEREY>ALL(SELECTYFROMB)
Resultado:
XY
Listagem17:OutroexemplodeselectcomoperadorANY
1
SELECT*FROMAWHEREY>ALL(SELECTYFROMBWHEREX>30)
Resultado:
XY
3 10
Ousode!=ALLequivaleaNOTIN.
Listagem18:SubconsultacomoperadorALL
1
SELECT*FROMAWHEREY!=ALL(SELECTYFROMB)
Resultado:
XY
15
3 10
46
OpredicadoINutilizadopararecuperarapenasosregistrosnaconsultaprincipalquecontm
equivalncianasubconsulta.omesmoque=ANY.
Listagem19:ConsultacomoperadorIN
1
SELECT*FROMAWHEREYIN(SELECTYFROMB)
Resultado:
XY
29
NocdigoaseguirretornamososempregadosquevenderamummontantemaiorqueR$50.000,00.
Listagem20:SelectcomoperadorINutilizandoHAVING
1
2
3
4
SELECT*FROMEMPREGADOWHERECODIGOIN
(SELECTCODEMPREGADOFROMVENDAS
GROUPYBYCODEMPREGADO
HAVINGMAX(VALORTOTAL)>50000)
Demaneiracontrria,NOTINpodeserutilizadopararecuperarapenasosregistrosnaconsulta
principalparaosquaisnoexistaequivalncianasubconsulta.
Listagem21:SelectcomoperadorNOTIN
1
SELECT*FROMAWHEREYNOTIN(SELECTYFROMB)
Resultado:
http://www.linhadecodigo.com.br/artigo/2975/comandosbasicosemsqlinsertupdatedeleteeselect.aspx
4/6
23/03/2015
ComandosbsicosemSQLinsert,update,deleteeselect
XY
15
3 10
46
OpredicadoEXISTSdeterminaseasubconsultaretornaalgumregistro.Estaclusulaproduz
resultadossemelhantesaousodeIN.Vejaexemplo:
Listagem22:ConsultacomoperadorEXISTS
1
2
3
4
5
SELECT*FROMEMPREGADOWHEREEXISTS
(SELECT*FROMPEDIDOS
WHEREEMPREGADO.CODIGO=PEDIDOS.CODEMPREGADO
GROUPBYPEDIDOS.CODEMPREGADO
HAVINGMAX(PEDIDOS.VALOR_TOTAL)>50000)
Nestecomandosoretornadosonomeeodepartamentodosfuncionrioscujasomadevendas
ultrapassaramR$50.000,00.
OpredicadoNOTEXISTStambmpodeserutilizadoproduzindooefeitocontrrio:
Listagem23:ConsultacomoperadorNOTEXISTS
1
2
3
SELECT*FROMEMPREGADOWHERENOTEXISTS
(SELECT*FROMPEDIDOS
WHEREEMPREGADO.CODIGO=PEDIDOS.EMPREGADO)
Concluso
OscomandosSQLfornecemumalinguagemsimplesparamanipulaodedadosemumSGBD.Como
oSQLsetornouumpadro,oscomandosapresentadosfuncionaronamaioriadosbancosdedados
relacionais.Consulteohelpdoseubancodedadosparapossveisalteraesouparticularidades.
Referncias
SlidesdoprofessorDanielWildtdaUniversidadeFederaldoRioGrandedoSul
BATTISTI,Julio.SQLSERVER2005ADMINISTRAOEDESENVOLVIMENTO
HelbertCarvalhoTiagoAnalistadesistemas,comnfaseemsistemasdegestoERPebanco
dedadosSQLServer,podesercontactadoatravsdoemailhelbertcarvalho@yahoo.com.brou
http://twitter.com/helbertc
871
139
39
132
16
Like
291
Leiatambm
DiferenasentreSEQUENCESxIDENTITYnoMicrosoftSQLServer2012
SQL
UtilizandoFILETABLEnoSQLServer2012
SQLServer
UtilizandoSEQUENCESnoMicrosoftSQLServer2012
SQL
ExportaodedadosdoSQLServerparaoOraclecomassistentedeimportaodoSQLServer
SQL
TunningIndexcomoDTA
SQL
Estamosaqui:
http://www.linhadecodigo.com.br/artigo/2975/comandosbasicosemsqlinsertupdatedeleteeselect.aspx
5/6
23/03/2015
ComandosbsicosemSQLinsert,update,deleteeselect
Polticadeprivacidadeedeuso|Anuncie|Cadastrese|Faleconosco
LinhadeCdigofazpartedogrupoWeb03
LinhadeCdigo
Curtir
12.172pessoascurtiramLinhadeCdigo.
PluginsocialdoFacebook
2015LinhadeCdigo.Todososdireitosreservados
http://www.linhadecodigo.com.br/artigo/2975/comandosbasicosemsqlinsertupdatedeleteeselect.aspx
6/6