美文网首页
SQL的一些小知识呀(4)

SQL的一些小知识呀(4)

作者: Rainbow想喝奶茶 | 来源:发表于2021-08-27 11:18 被阅读0次
  • 子查询
    select子查询只能是单列;
    子查询中有时会使用到完全限定列名,比如children.name_id

  • 联结表

关系表的设计就是要把信息分解成多个表,一类数据一个表。各表通过某些共同的值相互关联(所以才叫关系数据库)
可伸缩:能够适应不断增加的工作而不失败。

联结直接在这里举一个例子说明吧

select customer.name,count(order.id)
from customer left join order 
on customer.id=order.cust_id
group by customer.name;

上述语句的含义是:计算出所有顾客的订单数量,哪怕是没有订单的顾客,数量也需要返回,记为0。
left join:即使在右表中没有关联的行,也要返回左表的所有数据。

  • 组合查询

union关键词进行组合查询,union前后的select语句,必须包含相同数量的列、表达式或聚集函数(对次序不做要求)。
利用union,当前后的查询会返回相同的行时,会自动去重。如果不想去重,则可以应用union all进行组合查询。
关于排序,order by只能出现在最后一条select语句中,但是会对所有的检索结果进行排序。

  • 更新和删除行
    如果想删除某一列的值,可设置它为NULL。
update table set line=NULL where number<2;

如果想删除表中的所有行,可以利用下方语法,因为它速度更快。

truncate table tablename
  • 创建表
    在创建表时,可以规定每一列是否允许不传值,如果必须传值,则需标识NOT NULL, 如果可以没有值,则可以不做标识或者标识NULL
    NULL代表没有值,不是空字符串'',也不是0。
  • 存储过程

存储过程就是为了以后使用而保存的一条或一组sql语句。

存储过程的执行,EXECUTE。它接受存储过程名以及需要传递的参数。
自我记录,有错误欢迎指正~

相关文章

网友评论

      本文标题:SQL的一些小知识呀(4)

      本文链接:https://www.haomeiwen.com/subject/wghmiltx.html