PHP自问自答数据库(中)

前言

上文说了数据库的科普,本文说说 SQL。(原计划本文说PHP操作数据库的方法,临时改变计划)

SQL是什么?

上文已经做了一点介绍,这回我们拆开好好聊聊它。

百科说

结构化查询语言(Structured Query Language)简称SQL,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统

白话说

既然数据库就是“仓库管理员”,数据读写直接通知他就行。

但是,大家是否想过一个问题:这个管理员是哪个国家的人?使用什么语言?中文还是英文?

当然,都不是。

他是数据库国人,他使用SQL语言。想和他对话,你必须先学习他们的语言。

SQL语言长什么样?

insert into 添加

table 目标数据表

(k1,k2) 字段名(列)

values 关键字,左边是字段,右边是值

(v1,v2) 数据,按顺序存入字段名

说人话

看,SQL语言是可以翻译成中文的。

删、改

本系列文章是帮助大家理解概念,而非语法,所以就省略了。

为什么把“查”单独拿出来说?

因为它复杂啊,写(增删改)都是最基本的条件,查则不然,我们来看几个需求。

最新10条数据,从大到小排列

手机相关数据,价格超过100,并且一周内的

计算去年产品价格,报个总价给我

将过去12个月的产品价格,分别报给我

这个需求还可以复杂一万倍,只要你擅长SQL语言,就能轻松要求数据库完成这些工作。

数据库这么牛?

确实牛,如果复杂的查询也是很慢的(真的很慢)

如果你提出这样的要求:取出最近100万笔交易,将其中单数的产品按天汇总,最后根据产品售出日的人流量进行排序。

数据库分分钟可能会被你玩死。不过,事无绝对,DBA这个工作岗位专门擅长搞这些事情。

SQL语言只有增删改查吗?

不不不,还有很多,比如…

操作表结构

对数据库、数据表、字段进行增删改查,都能够实现,事实上也是唯一的方法。不论什么客户端,最终都是通过SQL语句来创建这些结构的。

只不过,比较复杂,不建议新人强啃。

系统维护类

你想了解数据库当前的状态?配置的情况?还有各个系统变量的值? 这些都有。

其他

忽然之间想不起来,但几乎所有的数据库操作都可以通过SQL来实现。

SQL语言是通用的吗?

这个在上文也简单介绍过。据非官方统计,85%是通用的。(我就随口一说)

每个数据库都有自己的独特之处,比如limit、top 等。

注意

除了 SQL 之外,还有数据库函数,这就更加大不同。

忽然想起来,我还没写数据类型的区别,头大了,写数据库的文章,哪怕是初级的也是稍显头疼。

总结

下一篇真的是 PHP 操作 MYSQL 的流程了。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180426B0CHY800?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动