Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB
ÈÈÃűêÇ©£º c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 ×îÐÂÎÄÕ : sql

sql ÖÐ case when Óï·¨(ת)


sql
ÖÐ case when Óï·¨
sqlÓïÑÔÖÐÓÐûÓÐÀàËÆCÓïÑÔÖеÄswitch caseµÄÓï¾ä£¿£¿
 
ûÓÐ,ÓÃcase   when   À´´úÌæ¾ÍÐÐÁË.   
       
  ÀýÈç,ÏÂÃæµÄÓï¾äÏÔʾÖÐÎÄÄêÔ  
   
 
select   getdate()   as   ÈÕÆÚ,case   month(getdate())  
  when   11  
then   'ʮһ'  
  when   12   then   'Ê®¶þ'  
  else  
substring('Ò»¶þÈýËÄÎåÁùÆ߰˾ÅÊ®',   month(getdate()),1)  
  end+'ÔÂ'   as   Ô·Ý
=================================================
CASE
¿ÉÄÜÊÇ SQL
Öб»ÎóÓÃ×î¶àµÄ¹Ø¼ü×ÖÖ®Ò»¡£ËäÈ»Äã¿ÉÄÜÒÔÇ°ÓùýÕâ¸ö¹Ø¼ü×ÖÀ´´´½¨×ֶΣ¬µ«ÊÇËü»¹¾ßÓиü¶àÓ÷¨¡£ÀýÈ磬Äã¿ÉÒÔÔÚ
WHERE
×Ó¾äÖÐʹÓÃ
CASE
¡£

Ê×ÏÈÈÃÎÒÃÇ¿´Ò»ÏÂ
CASE

µÄÓï·¨¡£ÔÚÒ»°ãµÄ
SELECT
ÖУ¬ÆäÓï·¨ÈçÏ£º

SELECT

<
myColumnSpec
>

=

CASE

WHEN

<
A
>

THEN

<
somethingA
>
......

×ܽáSQLite²»Ö§³ÖµÄSQLÓï·¨ÓÐÄÄЩ


1 TOP
ÕâÊÇÒ»¸ö´ó¼Ò¾­³£Îʵ½µÄÎÊÌ⣬ÀýÈçÔÚSQLSERVERÖпÉÒÔʹÓÃÈçÏÂÓï¾äÀ´È¡µÃ¼Ç¼¼¯ÖеÄÇ°Ê®Ìõ¼Ç¼£º
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
 
µ«ÊÇÕâÌõSQLÓï¾äÔÚSQLiteÖÐÊÇÎÞ·¨Ö´Ðеģ¬Ó¦¸Ã¸ÄΪ£º
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
 
ÆäÖÐlimit 0,10±íʾ´ÓµÚ0Ìõ¼Ç¼¿ªÊ¼£¬ÍùºóÒ»¹²¶ÁÈ¡10Ìõ
 
2 ´´½¨ÊÓͼ£¨Create View£©
SQLiteÔÚ´´½¨¶à±íÊÓͼµÄʱºòÓÐÒ»¸öBUG£¬ÎÊÌâÈçÏ£º
CREATE VIEW watch_single AS SELECT DISTINCT watch_item.[watchid],watch_item.[itemid] from watch_item;
 
ÉÏÃæÕâÌõSQLÓï¾äÖ´Ðкó»áÏÔʾ³É¹¦£¬µ«ÊÇʵ¼ÊÉϳýÁË
SELECT COUNT(*) from [watch_single ] WHERE watch_ single.watchid = 1;
ÄÜÖ´ÐÐÖ®ÍâÊÇÎÞ·¨Ö´ÐÐÆäËûÈκÎÓï¾äµÄ¡£ÆäÔ­ÒòÔÚÓÚ½¨Á¢ÊÓͼµÄʱºòÖ¸¶¨ÁË×Ö¶ÎËùÔڵıíÃû£¬¶øSQLite²¢²»ÄÜÕýÈ·µØʶ±ðËü¡£ËùÒÔÉÏÃæµÄ´´½¨Óï¾äÒª¸ÄΪ£º
CREATE VIEW watch_single AS SELECT DISTINCT [watchid],[itemid] from watch_item;
 
µ«ÊÇËæÖ®¶øÀ´µÄÎÊÌâÊÇÈç¹ûÊǶà±íµÄÊÓͼ£¬ÇÒ±í¼äÓÐÖØÃû×ֶεÄʱºò¸ÃÔõô°ì£¿
 
3 COUNT£¨DISTINCT column£©
SQLiteÔÚÖ´ÐÐÈçÏÂÓï¾ä ......

×ܽáSQLite²»Ö§³ÖµÄSQLÓï·¨ÓÐÄÄЩ


1 TOP
ÕâÊÇÒ»¸ö´ó¼Ò¾­³£Îʵ½µÄÎÊÌ⣬ÀýÈçÔÚSQLSERVERÖпÉÒÔʹÓÃÈçÏÂÓï¾äÀ´È¡µÃ¼Ç¼¼¯ÖеÄÇ°Ê®Ìõ¼Ç¼£º
SELECT TOP 10 * from [index] ORDER BY indexid DESC;
 
µ«ÊÇÕâÌõSQLÓï¾äÔÚSQLiteÖÐÊÇÎÞ·¨Ö´Ðеģ¬Ó¦¸Ã¸ÄΪ£º
SELECT * from [index] ORDER BY indexid DESC limit 0,10;
 
ÆäÖÐlimit 0,10±íʾ´ÓµÚ0Ìõ¼Ç¼¿ªÊ¼£¬ÍùºóÒ»¹²¶ÁÈ¡10Ìõ
 
2 ´´½¨ÊÓͼ£¨Create View£©
SQLiteÔÚ´´½¨¶à±íÊÓͼµÄʱºòÓÐÒ»¸öBUG£¬ÎÊÌâÈçÏ£º
CREATE VIEW watch_single AS SELECT DISTINCT watch_item.[watchid],watch_item.[itemid] from watch_item;
 
ÉÏÃæÕâÌõSQLÓï¾äÖ´Ðкó»áÏÔʾ³É¹¦£¬µ«ÊÇʵ¼ÊÉϳýÁË
SELECT COUNT(*) from [watch_single ] WHERE watch_ single.watchid = 1;
ÄÜÖ´ÐÐÖ®ÍâÊÇÎÞ·¨Ö´ÐÐÆäËûÈκÎÓï¾äµÄ¡£ÆäÔ­ÒòÔÚÓÚ½¨Á¢ÊÓͼµÄʱºòÖ¸¶¨ÁË×Ö¶ÎËùÔڵıíÃû£¬¶øSQLite²¢²»ÄÜÕýÈ·µØʶ±ðËü¡£ËùÒÔÉÏÃæµÄ´´½¨Óï¾äÒª¸ÄΪ£º
CREATE VIEW watch_single AS SELECT DISTINCT [watchid],[itemid] from watch_item;
 
µ«ÊÇËæÖ®¶øÀ´µÄÎÊÌâÊÇÈç¹ûÊǶà±íµÄÊÓͼ£¬ÇÒ±í¼äÓÐÖØÃû×ֶεÄʱºò¸ÃÔõô°ì£¿
 
3 COUNT£¨DISTINCT column£©
SQLiteÔÚÖ´ÐÐÈçÏÂÓï¾ä ......

SQL SERVERÔÚ´æ´¢¹ý³ÌÖÐÁ¬½ÓÆäËûÊý¾Ý¿â

 --·ÃÎʲ»Í¬µçÄÔÉϵÄÊý¾Ý¿â    
  --Èç¹û¾­³£·ÃÎÊ»òÊý¾ÝÁ¿´ó,½¨ÒéÓÃÁ´½Ó·þÎñÆ÷  
   
  --´´½¨Á´½Ó·þÎñÆ÷  
  exec   sp_addlinkedserver     'srv_lnk','','SQLOLEDB','Ô¶³Ì·þÎñÆ÷Ãû»òipµØÖ·'  
  exec   sp_addlinkedsrvlogin   'srv_lnk','false',null,'Óû§Ãû','ÃÜÂë'  
  go  
   
  --²éѯʾÀý  
  select   *   from   srv_lnk.Êý¾Ý¿âÃû.dbo.±íÃû  
   
  --µ¼ÈëʾÀý  
  select   *   into   ±í   from   srv_lnk.Êý¾Ý¿âÃû.dbo.±íÃû  
   
  go  
  --´¦ÀíÍê³Éºóɾ³ýÁ´½Ó·þÎñÆ÷  
  exec   s ......

SQL ¶ÔDateTime (ʱ¼äºÍÈÕÆÚ£©Êý¾ÝÀàÐ͵Ļù±¾²Ù×÷

ÈÕÆÚºÍʱ¼äº¯Êý¶Ô½¨Á¢Ò»¸öÕ¾µãÊǷdz£ÓÐÓõġ£Õ¾µãµÄÖ÷ÈËÍùÍù¶ÔÒ»¸ö±íÖеÄÊý¾ÝºÎʱ±»
¸üиÐÐËȤ¡£Í¨¹ýÈÕÆÚºÍʱ¼äº¯Êý£¬Äã¿ÉÒÔÔÚºÁÃ뼶¸ú×ÙÒ»¸ö±íµÄ¸Ä±ä¡£
·µ»Øµ±Ç°ÈÕÆÚºÍʱ¼ä
ͨ¹ýº¯ÊýGETDATE£¨£©£¬Äã¿ÉÒÔ»ñµÃµ±Ç°µÄÈÕÆÚºÍʱ¼ä¡£ÀýÈ磬Óï¾äSELECT GETDATE()
·µ»ØÈçϵĽá¹û£º
……………………………
NOV 30 1997 3£º29AM
(1 row(s) affected)
ÏÔÈ»£¬Èç¹ûÄ㽫À´Ê¹ÓÃÕâ¸öº¯Êý£¬ÄãµÃµ½µÄÈÕÆÚ½«±ÈÕâ¸öʱ¼äÍí£¬»òÕ߸üÔç¡£
º¯ÊýGETDATE£¨£©¿ÉÒÔÓÃÀ´×÷ΪDATEDIME£¨£©ÐÍ×ֶεÄȱʡֵ¡£Õâ¶Ô²åÈë¼Ç¼ʱ±£´æ
µ±Ê±µÄʱ¼äÊÇÓÐÓõġ£ÀýÈ磬¼ÙÉèÓÐÒ»¸ö±íÓÃÀ´±£´æÄãÕ¾µãÉϵĻÈÕÖ¾¡£Ã¿µ±ÓÐÒ»¸ö·Ã
ÎÊÕß·ÃÎʵ½ÄãµÄÕ¾µãʱ£¬¾ÍÔÚ±íÖÐÌí¼ÓÒ»ÌõмǼ£¬¼ÇÏ·ÃÎÊÕßµÄÃû×Ö£¬»î¶¯£¬ºÍ½øÐзÃ
ÎʵÄʱ¼ä¡£Òª½¨Á¢Ò»¸ö±í£¬ÆäÖеļǼ°üº¬Óе±Ç°µÄÈÕÆÚºÍʱ¼ä£¬¿ÉÒÔÌí¼ÓÒ»¸öDATETIME
ÐÍ×ֶΣ¬Ö¸¶¨ÆäȱʡֵΪº¯ÊýGETDATE£¨£©µÄ·µ»ØÖµ£¬¾ÍÏóÕâÑù£º
CREATE TABLE site_log (
username VARCHAR(40)£¬
useractivity VARCHAR(100)£¬
entrydate DATETIME DEFAULT GETDATE())
ת»»ÈÕÆÚºÍʱ¼ä
ÄãÒ²ÐíÒѾ­× ......

sql CHARINDEXº¯Êý

sql CHARINDEXº¯Êý
SQL Server 2010-01-15 09:01:15 ÔĶÁ888 ÆÀÂÛ0 ×ֺţº´óÖÐС
CHARINDEXº¯Êý·µ»Ø×Ö·û»òÕß×Ö·û´®ÔÚÁíÒ»¸ö×Ö·û´®ÖеÄÆðʼλÖá£CHARINDEXº¯Êýµ÷Ó÷½·¨ÈçÏ£º
       CHARINDEX ( expression1 , expression2 [ , start_location ] )
       Expression1ÊÇÒªµ½expression2ÖÐÑ°ÕÒµÄ×Ö·ûÖУ¬start_locationÊÇCHARINDEXº¯Êý¿ªÊ¼ÔÚexpression2ÖÐÕÒexpression1µÄλÖá£
       CHARINDEXº¯Êý·µ»ØÒ»¸öÕûÊý£¬·µ»ØµÄÕûÊýÊÇÒªÕÒµÄ×Ö·û´®ÔÚ±»ÕÒµÄ×Ö·û´®ÖеÄλÖ᣼ÙÈçCHARINDEXûÓÐÕÒµ½ÒªÕÒµÄ×Ö·û´®£¬ÄÇôº¯ÊýÕûÊý“0”¡£ÈÃÎÒÃÇ¿´¿´ÏÂÃæµÄº¯ÊýÃüÁîÖ´ÐеĽá¹û£º
      CHARINDEX('SQL', 'Microsoft SQL Server')
      Õâ¸öº¯ÊýÃüÁ·µ»ØÔÚ“Microsoft SQL Server”ÖГSQL”µÄÆðʼλÖã¬ÔÚÕâ¸öÀý×ÓÖУ¬CHARINDEXº¯Êý½«·µ»Ø“S”ÔÚ“Microsoft SQL Server”ÖеÄλÖÃ11¡£
½ÓÏÂÀ´£¬ÎÒÃÇ¿´Õâ¸öCHARINDEXÃüÁ
      ......

[SQL Server] µ¼³ö±í½á¹¹(Êý¾Ý×Öµä)

-- Êý¾Ý×Öµä
SELECT
        (case when a.colorder=1 then d.name else '' end)±íÃû,
        a.colorder ×Ö¶ÎÐòºÅ,
        a.name ×Ö¶ÎÃû,
        (case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end) ±êʶ,
       (case when (SELECT count(*)
        from sysobjects
        WHERE (name in
                (SELECT name
                from sysindexes
                WHERE (id = a.id) AND (indid in
                 & ......
×ܼǼÊý:4346; ×ÜÒ³Êý:725; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [29] [30] [31] [32] 33 [34] [35] [36] [37] [38]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ