Sybase関数の照合の使用

4974 ワード

Sybase文字列関数:
       
datalength(char_expr)
 char_expr         ,    
substring(expression,start,length)
       
right(char_expr,int_expr)
  char_expr   int_expr  
       
upper(char_expr)
 char_expr       
lower(char_expr)
 char_expr       
space(int_expr)
   int_expr       
replicate(char_expr,int_expr)
  char_expr,int_expr 
stuff(expr1,start,length,expr2)
 expr2  epxr1 start    length    
reverse(char_expr)
  char_expr    
ltrim(char_expr)
    
rtrim(char_expr)
    
    
ascii(char_expr)
  char_expr       ASCII 
char(int_expr)
 ASCII      
str(float_expr[,length[,decimal]])
           
soundex(char_expr)
  char_expr soundex 
difference(char_expr1,char_expr2)
     soundex   
    
charindex(char_expr,expression)
    char_expr     ,   0
patindex("%pattern%",expression)
           ,   0
  
datalength            
soundex             
difference  0-4    ,0      ,4     
   
%              
_         (     )
[]       ,   "OR"  
    [ABG]   A,B,G
    [A-C]   A,B,C
    [A-CE-G] A,B,C,E,F,G
    [^ABG]   A,B,G
    [^A-C]     A,B,C
  
escape  
                          。
ANSI-89 SQL     escape          
     ,[]        , :
select * from test_tab
    where description like "%20[%]%"
  :
like char_expression escape escape_character
 
select * from test_tab
    where description like "%20#%%" escape "#"
+        
select au_laname+","+au_fname from authors

 
数学関数:
abs(numeric_expr)
         
ceiling(numeric_expr)
               
exp(float_expr)
         
floor(numeric_expr)
               
pi()
    3.1415926
power(numeric_expr,power)
  numeric_expr   power  
rand([int_expr])
  0-1        ,     
round(numeric_expr,int_expr)
         int_expr     
sign(int_expr)
   +1, 0  -1
sqrt(float_expr)
         
SQL SERVER                   

 
日付関数:
getdate()
            
datename(datepart,date_expr)
        date_expr      ,        
datepart(datepart,date_expr)
      date_expr      
datediff(datepart,date_expr1,date_expr2)
  date_expr2-date_expr1,     datepart  
dateadd(datepart,number,date_expr)
    ,   date_expr     number         
  
datepart
               
  yy   1753-9999
   qq   1-4
  mm   1-12
        dy   1-366
  dd   1-31
   wk   1-54
    dw   1-7(1=sunday)
   hh   0-23
   mi   0-59
  ss   0-59
   ms   0-999
 :
select invoice_no,
    datediff(dd,date_shipped,getdate())
    from invoices
    where balance_due>0

 
変換関数convert:
                  :
convert(datetype [(length)],expression)
select "Advance="+convert(char(12),advance)
    from titles

 
日付変換:
convert(datetype[(length)],expression,format)
format            ,    :
                     
    0 or 100   mon dd yyy hh:miAM(or PM)
1 101 mm/dd/yy
2 102 yy.mm.dd
3 103 dd/mm/yy
4 104 dd.mm.yy
5 105 dd-mm-yy
6 106 dd mon yy
7 107 mon dd,yy
8 108 hh:mm:ss
    9 or 109   mon dd,yyyy hh:mi:ss:mmmAM(or PM)
10 110 mm-dd-yy
11 111 yy/mm/dd
12 112 yymmdd

 
システム関数:
           
        
host_id()                  ID 
host_name()                    
suser_id(["login_name"])      SQL Server ID 
suser_name([server_user_id])      SQL Server   
user_id(["name_in_db"])         ID 
user_name([user_id])           
user                    
show_role()                 


 
データベースとオブジェクト情報:
db_id(["db_name"])    ID 
db_name([db_id])        
object_id("objname")      ID 
object_name(obj_id])       
col_name(obj_id,col_id)      
col_length("objname","colname")       
index_col("objname",index_id,key#)         
valid_name(char_expr)  char_expr       ,   0


 
データ関数:
datalength(expression)      expression   
tsequal(timestamp1,timestamp2)        ,       ,       

 
isnull()isnull関数は、クエリーバーまたは合計の空の値の代わりに指定した値を使用します.
select avg(isnull(total_order,$0))
    from invoices