Sunteți pe pagina 1din 6

23/03/2015

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

S-ar putea să vă placă și