php语言下mysql的一些基本操作

来源:互联网 发布:java心得体会 编辑:程序博客网 时间:2024/05/22 01:42

首先我们先了解一下mysql的基本语句和关键词:

创建数据库
CREATE DATABASE IF NOT EXISTS company;
使用数据库
USE company;
创建表
CREATE TABLE IF NOT EXISTS employee (em_id INT PRIMARY KEY auto_increment,em_name VARCHAR(10) NOT NULL,em_phone VARCHAR(11) NOT NULL UNIQUE,em_depart VARCHAR(20) NOT NULL DEFAULT '研发一部');CREATE TABLE IF NOT EXISTS salary (sa_salary FLOAT(8) NOT NULL,sa_em_id INT NOT NULL,sa_month TINYINT(2) NOT NULL);CREATE TABLE IF NOT EXISTS hobby (ho_name VARCHAR(10), ho_em_id INT);
增删改查数据
    灵活使用insert/delete/update/select相关操作语句
整体sql语句如下:
-- 创建数据库CREATE DATABASE IF NOT EXISTS company;-- 使用数据库USE company;-- 创建员工表 employee-- em_id 整型 主键 自增-- em_name varchar(10) not null-- em_phone varchar(11) not null unique-- em_depart varchar(20) not null defalut '研发一部'-- 年龄,邮箱,性别,家庭住址,身份证号,银行卡号CREATE TABLE IF NOT EXISTS employee (em_id INT PRIMARY KEY auto_increment,em_name VARCHAR(10) NOT NULL,em_phone VARCHAR(11) NOT NULL UNIQUE,em_depart VARCHAR(20) NOT NULL DEFAULT '研发一部');-- 创建薪水表 salary-- sa_salary float(8) not null-- sa_em_id int not null-- sa_month TINYINT(2) not null-- 基本工资+课时费+补贴+加班费-五险-个人所得税 = 薪水CREATE TABLE IF NOT EXISTS salary (sa_salary FLOAT(8) NOT NULL,sa_em_id INT NOT NULL,sa_month TINYINT(2) NOT NULL);-- 爱好表 hobby-- ho_name varchar(10)-- ho_em_id intCREATE TABLE IF NOT EXISTS hobby (ho_name VARCHAR(10), ho_em_id INT);-- INSERT INTO 表名 (字段名) value (字段对应的内容);-- INSERT INTO 表名 (字段名) values (字段对应的内容),(字段对应的内容);-- 如果插入字符串,需要用''括起来-- 字段的位置要和内容的位置一一对应-- 如果字段名表示所有字段,可省略-- INSERT INTO hobby (ho_name, ho_em_id) value ('打篮球',1001);-- INSERT INTO hobby value ('打篮球',1001);-- 要求:查询所有员工的基本信息(爱好,薪资,姓名)-- SELECT * from employee LEFT JOIN salary on employee.em_id=salary.sa_em_id LEFT JOIN hobby on employee.em_id=hobby.ho_em_id;-- 要求:查询没有填写爱好的员工的基本信息-- SELECT * from employee LEFT JOIN salary on employee.em_id=salary.sa_em_id LEFT JOIN hobby on employee.em_id=hobby.ho_em_id where hobby.ho_name IS NULL;-- 要求:统计员工3月和4月工资总和-- SELECT employee.em_name,SUM(salary.sa_salary) FROM salary INNER JOIN employee ON salary.sa_em_id=employee.em_id GROUP BY salary.sa_em_id;-- 要求:统计员工3月和4月工资总和并且降序排列-- SELECT employee.em_name,SUM(salary.sa_salary) AS 'sa' FROM salary INNER JOIN employee ON salary.sa_em_id=employee.em_id GROUP BY salary.sa_em_id ORDER BY sa;-- 要求:统计每个员工的爱好个数SELECT employee.em_name,COUNT(hobby.ho_name) FROM employee LEFT JOIN hobby ON employee.em_id=hobby.ho_em_id GROUP BY hobby.ho_em_id;

原创粉丝点击