Welcome to Sign in | Help
in Search

upper in sql

Last post 04-24-2008, 5:02 PM by rsocol. 4 replies.
Sort Posts: Previous Next
  •  04-23-2008, 9:49 AM 4735

    upper in sql

    vreau sa transform un select din fox in sql
    si selectul meu de fox foloseste upper()

    problema e ca upperul din sql nu e la fel cu cel din fox
    select 1 from gest_docum where 'FAV'='Fav' imi returneaza 1

    cum pot sa fac un select in care 'FAV' nu e egal cu 'Fav'





  •  04-23-2008, 10:19 AM 4736 in reply to 4735

    Re: upper in sql

    ---
  •  04-23-2008, 11:02 AM 4737 in reply to 4735

    Re: upper in sql

    Ai putea să foloseşti un collate care este case sensitive. Acest lucru îl poţi folosi la nivel de bază de date (toate operaţiunile de comparare a şirurilor de caractere vor fi influenţate) sau la nivel de condiţie precum în exemplul de mai jos:

    SELECT 
       CASE 
          
    WHEN'Fav' collate SQL_Latin1_General_CP1_CS_AS = 'Fav' collate SQL_Latin1_General_CP1_CS_AS
          THEN 'Sirurile de caractere sunt identice'
          ELSE 'Sirurile sunt diferite'
       END AS Rezultat

    sau

    SELECT 
       CASE 
          WHEN'FAV' collate SQL_Latin1_General_CP1_CS_AS = 'Fav' collate SQL_Latin1_General_CP1_CS_AS
          THEN 'Sirurile de caractere sunt identice'
          ELSE 'Sirurile sunt diferite'
       END AS Rezultat

    Rezultatul în primul caz va fi: Sirurile de caractere sunt identice iar în al 2-lea caz: Sirurile sunt diferite
    În mod default, collation-ul pt. baza mea de date este SQL_Latin1_General_CP1_CI_AS (case insensitive) dar condiţia este evaluată cu collation SQL_Latin1_General_CP1_CS_AS (case sensitive)


    Cătălin D.
  •  04-23-2008, 12:48 PM 4740 in reply to 4737

    Re: upper in sql

    multumesc Catalin.
    e ceea ce cautam.
  •  04-24-2008, 5:02 PM 4753 in reply to 4737

    Re: upper in sql

    O mică observaţie, Katalyn: e suficient să pui COLLATE-ul într-un singur loc (ori în stânga egalului, ori în dreapta), iar cealaltă expresie se va converti automat la collation-ul specificat explicit. Pentru mai multe detalii despre misteriosul subiect numit "Collation Precedence", vezi: http://msdn2.microsoft.com/en-us/library/ms179886.aspx

    Răzvan
View as RSS news feed in XML
Powered by Community Server (Commercial Edition), by Telligent Systems