产品经理学SQL的正确姿势(一)

起因

某日抽烟,产品焦大帅问我,sql难不难学?
焦大帅认为:
1. 分析数据时,每次找开GG调数据太麻烦了,特别是我司开发MM比较多,当成性骚扰就不好了。
2. 产品设计阶段,对数据库的了解,能避免瞎几把设计页面,乱几把提需求,节约沟通成本。
我一直认为,懂技术的产品才是更好的产品。于是果断推荐了两本关于sql的书籍。。。。
当然,现实总是骨感的,焦大帅看了书,并不知道如何下手。当时我就打了鸡血,吹出了牛皮:我来给你写教程,跟着来半小时教会你写查询。
好吧,牛皮是吹出去了,但咱是带把的爷们,不能耸,一个字干!

需求分析

原谅我的习惯,我分析了一下焦大帅的需求,只有一点:暂时只需要会查询就行了。(建表这些与他目前没有毛关系)
那么焦大帅需要知道的:
1. 数据库的概念,表的概念和字段的概念,工具的使用。
2. 简单的查询,条件查询和联表查询(感觉这里就可以满足百分之八十的需求了)
3. 查询模型,后续知识点补充。

基本概念

产品对于excel肯定不陌生,那我们就从它开始,首先看下面的一张excel表和数据库的表:
产品经理学SQL的正确姿势(一)_第1张图片
美女表.png
产品经理学SQL的正确姿势(一)_第2张图片
数据库表.png

图一是excel表,图二是数据库的表,看出什么来了吗?
表: 没错,其实excel的表和数据库的表一个概念,都是用来存储同一类数据的集合,并且是由行和列组成的二维表,表也称实体
列: 姓名(name),等级(level)就是一列,平常叫字段
行: 张柏芝,7,香港,36就是一行(条)数据
主键: id(1,2,3)叫做主键,用来标识表中每一行值,通常用primary key来约束,当然,现在你不用理解primary key的含义,你只需要知道,程序GG建表时,一张表中只会有一个primary key约束,同时它是自动增长的,一般都是用ID字段。跟你在excel中每插入一条信息前面都会自动新增一个ID效果一样。
数据库: 那什么是数据库呢?数据库就是存储表的仓库。
SQL: 专为数据库而建立的操作命令集,结构化查询语言(英语:Structural Query Language)

以上就是一些基本的概念,是不是很简单?下面来介绍一下数据库的安装和辅助工具的使用。

数据库的安装和工具的使用

我这里用mysql做为示例,mac下工具使用sequel pro,windows下可以用navicat for mysql,但它是收费的,就不提供下载址了,聪明的你肯定有办法。

下载地址:
mysql
sequel pro

先安装mysql再安装sequel pro,至于安装过程,这个我觉的没太大必要说了吧。

mysql建议安装5.6版本的,选择dmg格式的。5.7会随机生成一个默认密码。
安装完成后:

产品经理学SQL的正确姿势(一)_第3张图片
连接界面.png

如图,输入相关信息,host:127.0.0.1或者localhost,Username:一般默认用root,Password:安装时填的密码,有时为空。点Connet。连接成功后。如图记住这个界面:

产品经理学SQL的正确姿势(一)_第4张图片
query.png

空白处就是以后要写sql的地方啦,是不是迫不及待了,自已安装来试下吧。选择test数据库,复制下面代码,放在空间处运行看下,具体看动态图:

CREATE TABLE `beauty` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(10) NOT NULL DEFAULT '' COMMENT '姓名',
  `level` tinyint(4) NOT NULL DEFAULT '0' COMMENT '等级',
  `province` char(10) NOT NULL DEFAULT '' COMMENT '省份',
  `age` int(11) NOT NULL COMMENT '年龄',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

INSERT INTO `beauty` (`id`, `name`, `level`, `province`, `age`)
VALUES
    (1,'张伯芝',7,'香港',36),
    (2,'林志玲',9,'台湾',42),
    (3,'柳岩',8,'湖南',36);
产品经理学SQL的正确姿势(一)_第5张图片
操作图.gif

怎么样?操作完了吗?到这里你已经学会最简单的查询了。下篇再深入讲查询。

你可能感兴趣的:(产品经理学SQL的正确姿势(一))