知识扩展-SQL查询基础
由于公司项目原因,在生产项目中用到了SQL语句,尽管只是一些简单的查询语句,也算是自己前端生涯的技能拓展,所以专门对于SQL语句,作了一些基础练习。网上学习SQL语句教程非常的多,学习资料百度即可。作为一个SQL菜鸟,在这里分享,是为了巩固学习,希望可以帮助到大家。 SQL基础 SQL 是用于访问和处理数据库的标准的计算机语言。目前我接触的数据库有:MySQL、PostgreSQL、MongoDB,前两个是关系型数据库,后一个是非关系型数据库。它们给我的直观区别是:关系型支持SQL语句,非关系型不支持。MySQL、PostgreSQL都是支持SQL语句的,这里需要一点前提知识。 SQL查询1. 如何进行数据表的查询?
这个的PERSONS就是数据表,column_name1、column_name2列的名称。 2. 如何进行数据表的过滤查询?
where 子句用于提取那些满足指定条件的记录。like 操作符用于在 WHERE 子句中搜索列中的指定模式。in 操作符允许在 WHERE 子句中规定多个值。 3. 如何多表查询数据?
以上sql语句即可进行多表查询,这样的多表查询又称笛卡尔查询,使用笛卡尔查询时要非常小心,由于结果集是目标表的行数乘积,对两个各自有100行记录的表进行笛卡尔查询将返回1万条记录,对两个各自有1万行记录的表进行笛卡尔查询将返回1亿条记录。(谨慎使用) 即使配合where语句也要慎用,因为FROM X,Y是先做笛卡尔乘积,WHERE 再从乘积后的表中选出指定列。 4. 有更好的多表查询方法嘛?—— 连接查询 连接查询分为三种:内查询 INNER JOIN、左查询 LEFT OUTER JOIN、右查询 RIGHT OUTER JOIN; 内查询语句如下:
确定主表,使用from 的语法(这里的表1 即可以是特定的表,也可以是(select * from ROBOTS;) 这样的语句);确定需要连接的表,使用inner join 的语法;确定连接条件,使用ON;可选。可选加上where子句、order by等子句; 内查询主要用来查询两表都存在的记录: 5. 左查询和右查询? 左查询语句如下:
left join等价于left outer join,左查询是选出左表存在的记录: 右查询语句如下:
right join等价于right outer join,右查询是选出左表存在的记录: 6. SQL语句支持函数嘛? sql是有内建函数,sql的内建函数可以极大便利开发者。
以上只是sql内建函数中的几个常用函数,还有更多的函数没有列出Mssql基本语句,例如:LAST、MIN、SUM、AVG等。 7.如何更新表数据或删除表数据?
建议对于数据表中的必要数据的删除只是标记删除,保存数据记录。 这次分享到此为止,由于自己也是菜鸟的原因,会持续学习sql,后续也会继续分享相关学习。 (编辑:武汉站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |