2010-06-23 10 views
0

J'ai un proc enregistré qui est appelé depuis ma page asp.net. Le champ "RecordUpdated" renvoie TRUE ou FALSE. J'ai besoin de cette colonne pour retourner YES (si vrai) ou NO (si faux)Modification d'une requête SQL dans l'instruction Select

Comment ferais-je cela?

SET @SQL = 'SELECT RecID, Vendor_Number, Vendor_Name, Invoice_Number, Item_Number, RecordAddDate, RecordUpdated FROM Vendor_Invoice_Log' 
SET @SQL = @SQL + ' ORDER BY Item_Number, Vendor_Number 
PRINT @SQL 

Répondre

3

Si tout ce que vous faites est d'essayer de changer TRUE pour OUI et NON à FAUX, vous pouvez le faire:

select case 
    when recordupdated = true then 'YES' 
    when recordupdated = false then 'NO' 
end recordupdates ... 

Bien sûr, votre code n'éxécute pas, donc je ne suis pas certain pourquoi vous avez montré les lignes 2 et 3.

1

Sons comme un emploi pour CASE() ...

1

Dans les situations où vous avez besoin de retourner un ou l'autre de quelque chose lorsque vous faites une commande SELECT, le

CASE 
    WHEN true 
    THEN YES 
    WHEN false 
    THEN NO 
END AS RecordUpdated 

est très utile.