Sintax Near *=

15/11/2018

0

Boa tarde Galera!
Estou com um relatório, que contém a função *= . Vi nas pesquisas que fiz que funcionava no SQL2000 como LEFT JOIN, mas que nas versões mais novas somente mudando a compatibilidade (o que não posso fazer) ou adequando a função LEFT JOIN.
Já tentei de todas as formas substituir essa linha com o problema mas só encontro casos com 2 tabelas e não estou sabendo aplicar na minha situação. Alguém poderia me ajudar.

Desde já agradeço.


SELECT PAC.PAC_NOME,
APQ.APQ_OSM_SERIE,
APQ.APQ_OSM_NUM,
PAC.PAC_SEXO,
OSM.OSM_DTHR,
OSM.OSM_OBS,
PAC.PAC_FONE,
PAC.PAC_REG,
PDC.PDC_COR,
PAC.PAC_PRONT,
PP.PRO_NOME PRO_NOME_PP,
DATEDIFF ( dd, PAC.PAC_NASC, GetDate () ) / 365 ,
PAC.PAC_CARTAO_SUS,
PAC.PAC_NOME_MAE,
APQ.APQ_USR_LOGIN,
PGT.PGT_TEXTO,
RPT.RPT_TEXTO,
RPA.RPA_RESPOSTA
FROM PAC, PDC, APQ, OSM, PGT, RPA, PRO PP, QST, RPT
WHERE ( APQ.APQ_QST_COD = QST.QST_COD ) AND
( PGT.PGT_QST_COD = QST.QST_COD ) AND
( RPA.RPA_APQ_COD = APQ.APQ_COD ) AND
( RPA.RPA_QST_COD = APQ.APQ_QST_COD ) AND
( RPA.RPA_PGT_COD = PGT.PGT_COD ) AND
( RPA.RPA_QST_COD = PGT.PGT_QST_COD ) AND
( RPA.RPA_PGT_COD = RPT.RPT_PGT_COD ) AND
( RPA.RPA_QST_COD = RPT.RPT_QST_COD ) AND
( RPA.RPA_RESPOSTA = RPT.RPT_MINIMO ) AND
( RPA.RPA_RESPOSTA *= RPT.RPT_MAXIMO ) AND
( PAC.PAC_PRO_COD = PP.PRO_COD ) AND
( APQ.APQ_OSM_SERIE = OSM.OSM_SERIE ) AND
( APQ.APQ_OSM_NUM = OSM.OSM_NUM ) AND
( PDC.PDC_PAC_REG = PAC.PAC_REG ) AND
( APQ.APQ_QUESTIONADO_N = PAC.PAC_REG ) AND
( APQ.APQ_OSM_NUM = :NUMERO ) AND
( APQ.APQ_OSM_SERIE = 118 )
ORDER BY PAC.PAC_NOME ASC
Douglas Jesus

Douglas Jesus

Responder

Posts

17/11/2018

Daniel Araújo

Olá Douglas!

Não sei se vai resolver porque não tenho a base de dados para testar. Mas vê aí se deu certo:
SELECT PAC.PAC_NOME
      ,APQ.APQ_OSM_SERIE
      ,APQ.APQ_OSM_NUM
      ,PAC.PAC_SEXO
      ,OSM.OSM_DTHR
      ,OSM.OSM_OBS
      ,PAC.PAC_FONE
      ,PAC.PAC_REG
      ,PDC.PDC_COR
      ,PAC.PAC_PRONT
      ,PP.PRO_NOME PRO_NOME_PP
      ,DATEDIFF(DD, PAC.PAC_NASC, GETDATE()) / 365
      ,PAC.PAC_CARTAO_SUS
      ,PAC.PAC_NOME_MAE
      ,APQ.APQ_USR_LOGIN
      ,PGT.PGT_TEXTO
      ,RPT.RPT_TEXTO
      ,RPA.RPA_RESPOSTA
 FROM RPA
INNER JOIN APQ
   ON (RPA.RPA_APQ_COD = APQ.APQ_COD AND
       RPA.RPA_QST_COD = APQ.APQ_QST_COD)
 LEFT OUTER JOIN RPT
   ON (RPA.RPA_RESPOSTA = RPT.RPT_MAXIMO AND
       RPA.RPA_PGT_COD = RPT.RPT_PGT_COD AND
       RPA.RPA_QST_COD = RPT.RPT_QST_COD AND
       RPA.RPA_RESPOSTA = RPT.RPT_MINIMO)
INNER JOIN PGT
   ON (RPA.RPA_PGT_COD = PGT.PGT_COD AND
       RPA.RPA_QST_COD = PGT.PGT_QST_COD)
INNER JOIN PAC
   ON APQ.APQ_QUESTIONADO_N = PAC.PAC_REG
INNER JOIN QST
   ON (APQ.APQ_QST_COD = QST.QST_COD AND
       PGT.PGT_QST_COD = QST.QST_COD)
INNER JOIN OSM
   ON (APQ.APQ_OSM_SERIE = OSM.OSM_SERIE AND
       APQ.APQ_OSM_NUM = OSM.OSM_NUM)
INNER JOIN PRO PP
   ON PAC.PAC_PRO_COD = PP.PRO_COD
INNER JOIN PDC
   ON PDC.PDC_PAC_REG = PAC.PAC_REG
WHERE APQ.APQ_OSM_NUM = :NUMERO
  AND APQ.APQ_OSM_SERIE = 118
ORDER BY PAC.PAC_NOME ASC
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar