账号通
    

账号  

密码  

20709

查看

13

回复
主题:[分享]新手学习SQL必看,数据库语句说明 [收藏主题] 转到:  
任我行 当前离线

6496

主题

191

广播

251

粉丝
添加关注
级别:管理员

用户积分:46050 分
登录次数:4182 次
注册时间:2006/4/26
最后登录:2024/11/21
任我行 发表于:2008/12/31 17:38:00   | 显示全部帖子 查看该作者主题 楼主 

***SELECT***
   select *(列名) from table_name(表名) where column_name operator value
   ex:(宿主)
  select * from stock_information where stockid   = str(nid)
     stockname = 'str_name'
     stockname like '% find this %'
     stockname like '[a-zA-Z]%' --------- ([]指定值的范围)
     stockname like '[^F-M]%'   --------- (^排除指定范围)
     --------- 只能在使用like关键字的where子句中使用通配符)
     or stockpath = 'stock_path'
     or stocknumber < 1000
     and stockindex = 24
     not stocksex = 'man'
     stocknumber between 20 and 100
     stocknumber in(10,20,30)
     order by stockid desc(asc) --------- 排序,desc-降序,asc-升序
     order by 1,2 --------- by列号
     stockname = (select stockname from stock_information  where stockid  = 4)
     --------- 子查询
     --------- 除非能确保内层select只返回一个行的值,
     --------- 否则应在外层where子句中用一个in限定符
  select distinct column_name form table_name --------- distinct指定检索独有的列值,不重复
  select stocknumber ,"stocknumber + 10" = stocknumber + 10 from table_name
  select stockname , "stocknumber" = count(*) from table_name group by stockname
                                      --------- group by 将表按行分组,指定列中有相同的值
          having count(*) = 2  ---------  having选定指定的组
       
  select *
  from table1, table2                 
  where table1.id *= table2.id -------- 左外部连接,table1中有的而table2中没有得以null表示
     table1.id =* table2.id -------- 右外部连接


  select stockname from table1
  union [all]  -----  union合并查询结果集,all-保留重复行
  select stockname from table2


***insert***


  insert into table_name (Stock_name,Stock_number) value ("xxx","xxxx")
              value (select Stockname , Stocknumber from Stock_table2)---value为select语句


***update***


  update table_name set Stockname = "xxx" [where Stockid = 3]
         Stockname = default
         Stockname = null
         Stocknumber = Stockname + 4


***delete***


  delete from table_name where Stockid = 3
  truncate table_name ----------- 删除表中所有行,仍保持表的完整性
  drop table table_name --------------- 完全删除表


***alter table*** --- 修改数据库表结构


  alter table database.owner.table_name add column_name char(2) null .....
  sp_help table_name ---- 显示表已有特征
  create table table_name (name char(20), age smallint, lname varchar(30))
  insert into table_name select ......... ----- 实现删除列的方法(创建新表)
  alter table table_name drop constraint Stockname_default ---- 删除Stockname的default约束
   
***function(/*常用函数*/)***


----统计函数----
    AVG    --求平均值
    COUNT   --统计数目  
    MAX    --求最大值
    MIN    --求最小值
    SUM    --求和


--AVG
    use pangu
    select avg(e_wage) as dept_avgWage from employee group by dept_id


--MAX
--求工资最高的员工姓名
use pangu
select e_name from employee where e_wage =  (select max(e_wage)   from employee)

 
  支持(0) | 反对(0) 回到顶部顶端 回到底部底部
<上一主题 | 下一主题 >
Powered By KesionCMS Version X1
厦门科汛软件有限公司 © 2006-2016 页面执行0.06445秒 powered by KesionCMS 9.0