<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Skynet

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

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      112 Posts :: 1 Stories :: 49 Comments :: 0 Trackbacks

    #

    引用:http://bbs.mysql.cn/thread-9135-1-2.html
    引用:21. 觸發程序

    create table a (sa int);
    create table b (sb int);
    drop trigger  a_bi ;

    delimiter 
    //
    create trigger a_bi
    before 
    insert on a
    for each row Begin
      
    insert into b values(new.sa*100);
    end;//
    delimiter ;

    insert into a values(1);

    select * from b ;> 100
    posted @ 2008-10-01 18:13 劉凱毅 閱讀(1569) | 評論 (0)編輯 收藏

    在線文檔參考

    jdbc url: 詳細屬性可參考

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

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


    協調 SQL 詳細:

      這就重點說下:SHOW

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

          SHOW CHARACTER SET LIKE '%' ;

      2. 查看列

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

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

      3. 查看數據庫,表結構;當然你們也可以仿照下此再建自己的庫,表

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

      4.權限查看

       SHOW GRANTS FOR 'root'@'localhost';

      .....(詳細參考


    SQL 詳細

    這就上寫自己一些有感覺的sql :參考

    1.只查詢重復 Eg:

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

    2.報表查詢橫向輸出 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.復雜組合查詢

    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');
    按月統計銷售表中貨物的銷售量數
    查詢結果如下:
      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
    -----------------------------------------------------------------------

    //當然也可以 使用mysql 時間函數 在軟件編輯時 你可以輸入 String[] 并根據數據動態拼寫 sql( case部分!! )
    //這個 例子很好 哦!報表可以一句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.字符集子層關系
    1     a
    2     b
    11    c
    (代碼11表示為1的下級)
    我要通過一條句子,得出如下結果:
    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 ;
    posted @ 2008-10-01 17:22 劉凱毅 閱讀(2338) | 評論 (0)編輯 收藏

    就用數據數據庫表地址數據(中國地區) 來說吧(用Windows 請使用 gbk !!)

    可直接運行(去除注解)

    存儲過程:

    DELIMITER //
    drop procedure if exists  findLChild//
    /* iid 遞歸父節點 , layer 允許遞歸深度 */

    CREATE PROCEDURE findLChild(iid bigint(20),layer bigint(20))
     
    BEGIN
       
    /*創建接受查詢的臨時表 */
        
    create temporary  table if not exists tmp_table(id bigint(20),name varchar(50)) ENGINE=InnoDB DEFAULT CHARSET=utf8;
        
    /*最高允許遞歸數*/
       
    SET @@max_sp_recursion_depth = 99 ;
        call iterative(iid,layer);
    /*核心數據收集*/
       
    select * from tmp_table ;/* 展現 */
        
    drop temporary  table if  exists  tmp_table ;/*刪除臨時表*/
      
    END;//
    DELIMITER ;

    DELIMITER 
    //
    drop procedure if exists  iterative //
    CREATE PROCEDURE iterative(iid bigint(20),layer bigint(20))
        
    BEGIN
             
    declare tid bigint(20default -1 ;
             
    declare tname varchar(50character set utf8;

             
    /* 游標定義 */
             
    declare cur1 CURSOR FOR select id,name from location where fid=iid ;
             
    declare CONTINUE HANDLER FOR SQLSTATE '02000' SET tid = null;
          
          
    /* 允許遞歸深度 */
          
    if layer>0 then
             
    OPEN cur1 ;
             
    FETCH cur1 INTO tid,tname ;
               
    WHILE ( tid is not null ) 
                 DO
                  
    /* 核心數據收集 */
               
    insert into tmp_table values(tid,tname);
                  call iterative(tid,layer
    -1);
                  
    FETCH cur1 INTO tid,tname ;
               
    END WHILE;
           
    end if;
        
    END;//
    DELIMITER ;

    //運行!!

    mysql> call findLChild(1,1);
    +------+------------------+
    | id   | name             |
    +------+------------------+
    |    2 | 北京             |
    |    4 | 上海             |
    |    6 | 香港特別行政區   |
    |    8 | 澳門特別行政區   |
    |   10 | 河北             |
    |   23 | 山西             |
    |   35 | 遼寧             |
    |   50 | 吉林             |
    |   60 | 黑龍江           |
    |   74 | 江蘇             |
    |   88 | 浙江             |
    |  101 | 安徽             |
    |  119 | 福建             |
    |  129 | 江西             |
    |  142 | 山東             |
    |  160 | 河南             |
    |  179 | 湖北             |
    |  198 | 湖南             |
    |  213 | 廣東             |
    |  235 | 甘肅             |
    |  250 | 四川             |
    |  272 | 貴州             |
    |  282 | 海南             |
    |  301 | 云南             |
    |  318 | 青海             |
    |  327 | 陜西             |
    |  348 | 廣西壯族自治區   |
    |  363 | 西藏自治區       |
    |  371 | 寧夏回族自治區   |
    |  377 | 新疆維吾爾自治區 |
    |  400 | 內蒙古自治區     |
    |  413 | 臺灣省           |
    +------+------------------+
    32 rows in set (0.02 sec)




    posted @ 2008-10-01 17:19 劉凱毅 閱讀(4077) | 評論 (0)編輯 收藏

    僅列出標題
    共12頁: First 上一頁 4 5 6 7 8 9 10 11 12 
    主站蜘蛛池模板: a高清免费毛片久久| 亚洲一级片免费看| 国产麻豆视频免费观看| 久久久久亚洲AV无码专区首JN| 国内精品久久久久影院免费 | 午夜亚洲乱码伦小说区69堂| 日韩特黄特色大片免费视频| 亚洲日韩精品无码AV海量| 毛片免费视频在线观看| 亚洲欧美国产欧美色欲| 日韩在线免费播放| 一级免费黄色大片| 国产V亚洲V天堂A无码| 99视频免费播放| 亚洲乱码日产精品BD在线观看| 好吊妞在线成人免费| 美女无遮挡免费视频网站| 亚洲精品国产精品乱码不卞| 最近中文字幕免费大全| 久久久久久久亚洲Av无码| 97性无码区免费| 看亚洲a级一级毛片| 久久久精品国产亚洲成人满18免费网站 | 亚洲A∨无码无在线观看| 1024免费福利永久观看网站| 亚洲天然素人无码专区| 亚洲成?v人片天堂网无码| 中国好声音第二季免费播放| 亚洲酒色1314狠狠做| 国产在线播放免费| 免费精品99久久国产综合精品| 亚洲精品第一综合99久久| 亚洲午夜激情视频| 四虎在线最新永久免费| 深夜a级毛片免费视频| 亚洲人成亚洲精品| 国产精品视频免费一区二区三区| 三年片免费观看大全国语| 亚洲七久久之综合七久久| 亚洲精品成人无码中文毛片不卡| a级毛片无码免费真人|