2015年5月2日 星期六

資料庫編輯-notepad++ 2015.05.03

將資料格式化

  • 下載notepad++,範例文件(見紫菜gmail文件)右鍵以notepad++開啟
  • 右下INS代表編輯模式,big5是編碼
  • 選擇編碼->轉換至utf8(不是編譯),要有BOM的(無BOM是用於特殊情況)
  • 善用取代、alt+左鍵(直向選取)配合excel
  • insert into classtab#資料表名#(classname,g1,g2,g3,g4,g5,g6) values('國小',23,37,33,33,34,39);
匯入
  • 建立資料庫school,10欄
  • 欄名勿用中文、英文大寫、底線
  • 第一行A_I打勾(自動新增),索引選擇PRIMARY(排序)
  • 後面依情況選擇型態VARCHAR或INT,建立資料表
  • 選擇SQL,複製改好的範例文件,貼上
搜尋
  • 雖然指令無關大小寫,但是欄名有關,故以下school_name及tt,total須小寫(算了乖乖重打小寫吧,乖)
  • *代表所有,%代表其他字
  • 列出華山國小資訊:select * from classtab where school_name = '華山國小'
  • 列出小港區學校資訊:select * from classtab where school_name like '小港區%'
  • 列出名字中有山的資訊:select * from classtab where school_name like '%%'
  • 列出小港區及三民區資訊:select * from classtab where school_name like '小港區%'or school_name like'三民區%'
  • 列出新生數大於150人的學校:select * from classtab where g1 > '150'
  • 升冪排列:select * from classtab where g1 > '150' order by g1 asc
  • 高雄新生總和:select sum(g1) from classtab;
  • 降冪排列:select * from classtab where g1 > '150' order by g1 desc
  • 年級總人數和:select sum(g1),sum(g2),sum(g3),sum(g4),sum(g5),sum(g6) from classtab;
  • 高雄小學生總和:select sum(g1+g2+g3+g4+g5+g6) from classtab;
  • 三民區新生總和:select sum(g1) from classtab where school_name like '三民區%';
  • 顯示三民區,三民區新生總和:select '三民區', sum(g1) from classtab where school_name like '三民區%';
  • 高雄各小學,各小學新生人數:select school_name,g1+g2+g3+g4+g5+g6 from classtab;
  • select school_name,g1+g2+g3+g4+g5+g6 from classtab order by asc;
  • 將各校總和命名為tt並顯示:select school_name,g1+g2+g3+g4+g5+g6 as tt from classtab order by tt desc;
  • 把memo1改成total
  • 將各校總人數放進update:update classtab set total = g1+g2+g3+g4+g5+g6     #已有total欄,所以是用update不是insert
  • 取出學校左三個字:select school_name,left(school_name,3) from classltab
  • 列出區字在學校名第幾個字:SELECT school_name, LEFT( school_name, 3 ) , POSITION( '區'
    IN school_name ) 
    FROM classtab     #position為函數,和括號間不能有空格
  • 將學校名取到區字(列出各區):SELECT school_name, LEFT(school_name, position('區' in school_name)) from classtab;
  • 若是只要校名,則以lehgth(總字長-position'區')

沒有留言:

張貼留言