2017-08-15 4 views
2

J'ai deux instructions Select qui renvoient les informations correctes.Combinaison de deux instructions Select avec formatage supplémentaire

PartQnty = (Select SUM(Part_Qnty) from ClaimParts where claim_ID = Claims.Claim_ID), 

et

PartCount = (Select count(parts_ID) from ClaimParts where claim_ID = Claims.Claim_ID), 

Je dois combiner le résultat à la fois dans ce format: "PartCount/PartQnty" (2/1) Il doit être dans le format ci-dessus avant d'être renvoyé la colonne cfgrid.

+0

Quelle version de SQL et pouvez-vous fournir plus de la requête? Une sous-requête sum() comme celle-ci peut généralement être refactorisée pour être significativement plus efficace et accélérer votre application. – Shawn

Répondre

0

La réponse à ma question était de convertir la déclaration de partqnty et déclaration partcount à Varchars et ajouter un «/» inbetween eux.

convert(varchar(10),(Select count(parts_ID) from ClaimParts where claim_ID = Claims.Claim_ID))+'/'+convert(varchar(10),(Select SUM(Part_Qnty) from ClaimParts where claim_ID = Claims.Claim_ID)) AS lvq, 
+0

Cherchez-vous le résultat numérique de la division des deux nombres ou la représentation textuelle des deux nombres? ie 3 vs "6/2" – Shawn

+0

@Shawn Je cherchais la représentation textuelle des deux nombres "6/2" – user3059855

3

Cela devrait vous aider à démarrer

select partQnty = sum(part_qnty) 
, partCount = count(parts_id) 
from claimParts cp join claims c on cp.claim_id = c.claims_id