mysql的学习(四)-数据库表的记录的操作

INSERT INTO bookcategory(category_id,category,parent_id) VALUES(1,‘计算机‘,0);//指定插入的顺序

INSERT INTO bookcategory VALUES(1,‘计算机‘,0);//按照默认的插入

INSERT INTO bookcategory(category_id,category,parent_id) VALUES(1,‘计算机‘,0),(2,‘xxx‘,3)(3,‘xxxxx‘,4);//同时插入多条数据

INSERT INTO bookcategory SELECT * FROM test WHERE id>5//将查询结果插入表中

CREATE TABLE TEXT(
    category_id INT PRIMARY KEY AUTO_INCREMENT,
    parent_id INT NOT NULL
)AUTO_INCREMENT=5;    //auto_increment让这一列自动设置编号,默认初始值为,最后为设置初始值为5

ALTER TABLE bookcategory MODIFY category_id INT AUTO_INCREMENT=X//为已有表添加自增列

ALTER TABLE bookcategory MODIFY category_id INT;//去掉自增列

//有外键关系的话添加自增,要先去掉外键关系。

ALTER TABLE bookinfo DROP FOREIGN KEY fk_bcid//去掉外键

ALTER TABLE bookinfo ADD CONSTRAINT fk_bcid FOREIGN KEY(bookcdategory_id) REFERENCES bookcategory(category_id);//添加外键

SELECT price FROM bookinfo WHERE book_id=201501;//查询book_id为201501书的价格

SELECT * FROM readerinfo//查看读者信息表

SELECT xxx,xxx,xxx FROM readerinfo//查询指定列

SELECT xxx,xxx,xxx FROM readerinfo WHERE press=‘机械工业‘//设置外加条件的查询

SELECT DISTINCT press FROM bookinfo;//显示不重复的查询

SELECT * FROM readerinfo WHERE age IS NULL;//查询为空的列

UPDATE readerinfo SET balance =balance -18.9*0.05 WHERE card_id=‘xxxxxxxx‘//更新readerinfo这个表中的card_id为xxx的balance

DELETE FROM readerinfo WHERE card_id=‘201531513133‘//单表数据记录的删除,不加where则为全部删除

TRUNCATE TABLE readerinfo;//删除原表再创建空表

SELECT COUNT(*) FROM readerinfo WHERE sex=‘男‘//对查询结果的分组

SELECT sex FROM readerinfo GROUP BY sex;//查询有多少种性别

SELECT sex COUNT(*) FROM readerinfo GROUP BY sex;//统计每种性别的人数

SELECT sex FROM readerinfo GROUP BY sex WHERE COUNT(sex)>3;//也可以加限制条件。统计每种性别的人数

SELECT     * FROM bookinfo ORDER BY price//对查询结果排序,默认为升序

SELECT     * FROM bookinfo ORDER BY price,store;//price相同的,按照库存排序

SELECT * FROM bookinfo ORDER BY price ASC,store DESC;//asc升序,desc降序

SELECT * FROM bookinfo LIMIT 3;//limit限制查询数量,偏移量为0开始,显示前三行

SELECT * FROM bookinfo LIMIT 2,2;//显示第二条语句的后两个语句

SELECT store,COUNT(*) FROM bookinfo GROUP BY store ORDER BY store DESC LIMIT 4;//统计库存个数,并降序排序,并查看前四条语句

INSERT INTO bookcategory(category_id,category,parent_id) VALUES(1,‘计算机‘,0);//指定插入的顺序
INSERT INTO bookcategory VALUES(1,‘计算机‘,0);//按照默认的插入
INSERT INTO bookcategory(category_id,category,parent_id) VALUES(1,‘计算机‘,0),(2,‘xxx‘,3)(3,‘xxxxx‘,4);//同时插入多条数据
INSERT INTO bookcategory SELECT * FROM test WHERE id>5//将查询结果插入表中
CREATE TABLE TEXT(
category_id INT PRIMARY KEY AUTO_INCREMENT,
parent_id INT NOT NULL
)AUTO_INCREMENT=5; //auto_increment让这一列自动设置编号,默认初始值为,最后为设置初始值为5
ALTER TABLE bookcategory MODIFY category_id INT AUTO_INCREMENT=X//为已有表添加自增列
ALTER TABLE bookcategory MODIFY category_id INT;//去掉自增列
//有外键关系的话添加自增,要先去掉外键关系。
ALTER TABLE bookinfo DROP FOREIGN KEY fk_bcid//去掉外键
ALTER TABLE bookinfo ADD CONSTRAINT fk_bcid FOREIGN KEY(bookcdategory_id) REFERENCES bookcategory(category_id);//添加外键
SELECT price FROM bookinfo WHERE book_id=201501;//查询book_id为201501书的价格
SELECT * FROM readerinfo//查看读者信息表
SELECT xxx,xxx,xxx FROM readerinfo//查询指定列
SELECT xxx,xxx,xxx FROM readerinfo WHERE press=‘机械工业‘//设置外加条件的查询
SELECT DISTINCT press FROM bookinfo;//显示不重复的查询
SELECT * FROM readerinfo WHERE age IS NULL;//查询为空的列
UPDATE readerinfo SET balance =balance -18.9*0.05 WHERE card_id=‘xxxxxxxx‘//更新readerinfo这个表中的card_id为xxx的balance
DELETE FROM readerinfo WHERE card_id=‘201531513133‘//单表数据记录的删除,不加where则为全部删除
TRUNCATE TABLE readerinfo;//删除原表再创建空表
SELECT COUNT(*) FROM readerinfo WHERE sex=‘男‘//对查询结果的分组
SELECT sex FROM readerinfo GROUP BY sex;//查询有多少种性别
SELECT sex COUNT(*) FROM readerinfo GROUP BY sex;//统计每种性别的人数
SELECT sex FROM readerinfo GROUP BY sex WHERE COUNT(sex)>3;//也可以加限制条件。统计每种性别的人数
SELECT * FROM bookinfo ORDER BY price//对查询结果排序,默认为升序
SELECT * FROM bookinfo ORDER BY price,store;//price相同的,按照库存排序
SELECT * FROM bookinfo ORDER BY price ASC,store DESC;//asc升序,desc降序
SELECT * FROM bookinfo LIMIT 3;//limit限制查询数量,偏移量为0开始,显示前三行
SELECT * FROM bookinfo LIMIT 2,2;//显示第二条语句的后两个语句
SELECT store,COUNT(*) FROM bookinfo GROUP BY store ORDER BY store DESC LIMIT 4;//统计库存个数,并降序排序,并查看前四条语句

原文地址:https://www.cnblogs.com/wpbing/p/9196116.html

时间: 2024-10-17 00:26:55

mysql的学习(四)-数据库表的记录的操作的相关文章

MySQL基础学习之数据表

查看数据表 SHOW TABLE; 查看数据表详细结构 SHOW CREATE TABLE 表名\G; 创建数据表 CREATE TABLE 表名(数据名 类型,数据名1  类型2); CREATE TABLE department ( d_id INT(10) , d_name VARCHAR(20) , function VARCHAR(20) , address VARCHAR(30) ); 删除数据表 DROP TABLE 表名; 修改数据表 修改数据表名        ALTER TA

DDL——对数据库表的结构进行操作的练习

-- 这是DDL,对数据库表的结构进行操作的练习 -- 1 创建数据库 create database emp; -- 2,删除数据库 drop database emp; -- 3,显示数据库 show databases -- 4,显示数据库创建语句 show create DATABASE emp; -- 5,创建表 use emp; create table classinfo( cid int(11),-- '班级ID' cname VARCHAR(32),-- '班级名称' Actu

表误删记录恢复操作

表误删记录恢复操作 最近处理了个用户误删delete table 的故障,这里做了一个简单的汇总,文章内容整理自pub 里的各位大师的精粹,我这里偷个懒直接拿来用下. 基本处理思路: 1.如果还没有提交,用rollback.(应该不大可能.) 2.如果提交时间超过5分钟以上且小于undo_retention的设置,可以使用回闪功能.具体限制和操作可以参考:http://blog.itpub.net/post/468/15464 3.如果上述两条都不满足,可以使用logminer从redo中恢复,

mysql学习笔记——对数据表中记录的操作

对记录的操作,主要有增.删.改.查 一.记录插入命令:insert into 表名(列名,列名, .... ) values(值, 值, ....); 值个数应该列个数相同,值顺序和列顺序相同,值类型和列字段类型匹配 当表名后面省略列名时,values后面要给出所有列的值 插入数据时,字符串添加 单引号 '' ---- 字符型和日期型数据应包含在单引号中 插入数据时,中文乱码问题:将客户端的编码集设置为gbk 修改mysql 配置文件,永久改变客户端编码集 ----- mysql/my.ini

Django项目的创建与介绍.应用的创建与介绍.启动项目.pycharm创建启动项目.生命周期.三件套.静态文件.请求及数据.配置Mysql完成数据迁移.单表ORM记录的增删改查

一.Django项目的创建与介绍 ''' 安装Django #在cmd中输入pip3 #出现这个错误Fatal error in launcher: Unable to create process using '"' #可以直接用 python3 -m pip 代替 pip3 #这个问题是pip3 版本过低直接在cmd中执行 python3 -m pip install --upgrade pip 更新pip3 # 在指定解释器环境下安装django 1.11.9 # 在真实python3环境

Mysql怎么优化修复数据库表

最近客户问题说网站因为数据库报错打不开,自己总结了一下些经验,然后看报错信息如下: Mysql数据库作为优秀的开源数据库版本,支持大型数据存储.可是如果使用操作太多,表的频繁操作也可能会出现数据库表出现问题需要优化和修复 修复表——>方法一: 在浏览器打phpmyadmin或者在mysql客户端运行以下命令: 1)直接运行sql语句 REPAIR TABLE `table_name` 修复表 ,具体操作如下图: 2) 在数据库里找到操作也可以修复表,具体操作如下图: 修复表——>方法二: 可以

学习简单数据库表操作(Mysql)1

以orcl实例下,person表为例: 1.登录mysql: mysql安装路径下,bin目录,打开命令窗口,输入mysql -u用户名 -p密码; 2.显示所有实例,show databases; 3.进入orcl实例,use orcl; 4.显示person表字段信息,desc person; 5.修改字段描述,alter table person change pid PID int(11) not null; 6.修改表名,alter table person rename to peo

学习简单数据库表操作(Mysql)2

以orcl实例下,person表为例: 1.登录mysql: mysql安装路径下,bin目录,打开命令窗口,输入mysql -u用户名 -p密码; 2.显示所有实例,show databases; 3.进入orcl实例,use orcl; 4.显示person表字段信息,desc person; 5.修改字段描述,alter table person change pid PID int(11) not null; 6.修改表名,alter table person rename to peo

mysq 学习四 多表查询

多表的查询 1.连接查询 a.交叉连接:(cross in) create table CUSTOMERS( id int(11) NOT null auto_increment, name varchar(100) default null, city varchar(20) default null, primary key (id) ); 在插入数据的时候如果出现了中文插不进去的时候,保错的提示信息 是varchar的长度不够的时候,但是我们又明显知道我们指定的 长度是够的时候 我们可以看