Skynet

          ---------- ---------- 我的新 blog : liukaiyi.cublog.cn ---------- ----------

            BlogJava :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
            112 Posts :: 1 Stories :: 49 Comments :: 0 Trackbacks

          在線文檔參考

          jdbc url: 詳細(xì)屬性可參考

          Eg: jdbc:mysql://localhost:3306/test?user =root&password=&useUnicode=true&characterEncoding=utf8

          mysql URL: mysql -uroot -p --default-character-set=utf8


          協(xié)調(diào) SQL 詳細(xì):

            這就重點(diǎn)說(shuō)下:SHOW

            1. 查看全部庫(kù)支持字符 如:'gb%'  -gbk,gb2312

                SHOW CHARACTER SET LIKE '%' ;

            2. 查看列

            show columns from user from mysql ;
            show columns from mysql.user ;
            desc mysql.user ;
            //簡(jiǎn)化
            //更方便的 查看 列名 模糊查詢列名為 'Select%' (desc  information_schema.columns 還有更多驚喜)

            select column_name from information_schema.columns where column_name like 'Select%' ;

            3. 查看數(shù)據(jù)庫(kù),表結(jié)構(gòu);當(dāng)然你們也可以仿照下此再建自己的庫(kù),表

             show
             show create database information_schema"G
             show create table mysql.user"G

            4.權(quán)限查看

             SHOW GRANTS FOR 'root'@'localhost';

            .....(詳細(xì)參考


          SQL 詳細(xì)

          這就上寫(xiě)自己一些有感覺(jué)的sql :參考

          1.只查詢重復(fù) Eg:

          create   table  c (id  int  );
          insert   into  c  values  ( 1 ),( 2 ),( 3 ),( 4 ),( 3 ),( 5 ),( 6 ),( 1 );
          結(jié)果:
              
          select  id  from  c  group   by  id  having   count (id) > 1  ;

          2.報(bào)表查詢橫向輸出 Eg:

          Create table d(id int,name varchar(50));
          insert into d values(1,'gly');
          insert into d values(2,'ptgly');
          insert into d values(3,'ybgly');
          insert into d values(4,'ptgly');
          insert into d values(5,'ybgly');
          +---+-----+------+
          |gly |ptgly|ybgly|     
          +---+-----+------+-
           |1   |2     |2      |
          +---+-----+------+

          select  
              
          sum ( case   when  name = ' gly '   then   1   else   0   end  )  as  gly  ,
              
          sum ( case   when  name = ' ptgly '   then   1   else   0   end  )  as  ptgly  ,
              
          sum ( case   when  name = ' ybgly '   then   1   else   0   end  )  as  ybgly  
          from  d ;

          3.復(fù)雜組合查詢

          create table table_a (No int, No2 int,num double,itime date);
          insert into table_a values
               (1234,567890,33.5,'2004-12-21'),
               (1234,598701,44.8,'2004-11-21'),
               (1234,598701,45.2,'2004-10-01'),
               (1234,567890,66.5,'2004-9-21'),
               (3456,789065,22.5,'2004-10-01'),
               (3456,789065,77.5,'2004-10-27'),
               (3456,678901,48.5,'2004-12-21');
          按月統(tǒng)計(jì)銷售表中貨物的銷售量數(shù)
          查詢結(jié)果如下:
            No, No2 ,   九月,  十月,十一月,十二月
          1234,567890, 66.5 ,  0 ,  0  ,  33.5
          1234,598701,  0   , 45.2, 44.8, 0
          3456,789065, 0  ,  100,  0  ,  0
          3456,678901, 0 ,    0,    0  ,  48.5
          -----------------------------------------------------------------------

          //當(dāng)然也可以 使用mysql 時(shí)間函數(shù) 在軟件編輯時(shí) 你可以輸入 String[] 并根據(jù)數(shù)據(jù)動(dòng)態(tài)拼寫(xiě) sql( case部分!! )
          //這個(gè) 例子很好 哦!報(bào)表可以一句sql 得出!

          select  NO,NO2,
              
          sum ( case    when  itime  like   ' 2004-%9% '   then  num  else   0   end as  9M,
              
          sum ( case    when  itime  like   ' 2004-10% '   then  num  else   0   end as  10M,
              
          sum ( case    when  itime  like   ' 2004-11% '   then  num  else   0   end as  11M,
              
          sum ( case    when  itime  like   ' 2004-12% '   then  num  else   0   end as  12M
          from  table_a  group   by  no,no2  order   by  no,no2 ;


          4.字符集子層關(guān)系
          1     a
          2     b
          11    c
          (代碼11表示為1的下級(jí))
          我要通過(guò)一條句子,得出如下結(jié)果:
          Create table TabTest(t_Code varchar(10),t_Name varchar(10));
          insert into TabTest values('1','a');
          insert into TabTest values('2','b');
          insert into TabTest values('11','c');
          --------------------------------------------------------------

          select  tt1.t_Code,tt1.t_name,( 
               
          case  
                       
          when   exists  ( select   1   from  tabtest tt2 
                                                 
          where  tt2.t_code  like  CONCAT(tt1.t_code, ' % ' and  
                                                  tt2.t_code 
          <>  tt1.t_code )   then   ' you '  
                       
          else   ' wu '
                
          end  )  as  you_wu
          from  tabtest  tt1 ;


          整理 www.aygfsteel.com/Good-Game
          posted on 2008-10-01 17:22 劉凱毅 閱讀(2344) 評(píng)論(0)  編輯  收藏 所屬分類: database
          主站蜘蛛池模板: 托克逊县| 孟州市| 三穗县| 恩施市| 武夷山市| 清水河县| 威宁| 青阳县| 门头沟区| 岳阳市| 钦州市| 昌江| 赤水市| 宁津县| 桂平市| 瓮安县| 宜章县| 通许县| 徐水县| 新兴县| 龙泉市| 临汾市| 保山市| 开平市| 广德县| 盐边县| 涿鹿县| 湘潭市| 海伦市| 泌阳县| 陇川县| 淳安县| 新兴县| 西乡县| 清水县| 饶阳县| 绥滨县| 嘉定区| 准格尔旗| 金湖县| 宁德市|