创建表:

CREATE TABLE `biao` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '测试表',
`createtime` datetime DEFAULT NULL COMMENT '时间',
`title` varchar(10) CHARACTER SET latin1 DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8; 删除表:
DROP TABLE IF EXISTS `biao`;
DROP TABLE IF EXISTS t1,t2; 显示表结构,简写desc:describe biao 显示表结构语句:show create table biao
修改表名:alter table old rename new
显示表结构:show tables
修改字段类型:alter table biao modify id int(5)
修改表字段,新旧字段一样和modify就一样功能:
ALTER TABLE test ADD qqq VARCHAR(10) DEFAULT '1' NOT NULL
ALTER TABLE test CHANGE test test1 CHAR(32) NOT NULL DEFAULT '123';
删除字段:ALTER TABLE ims_mm DROP ttt
定义主键 primary key
非空 not null
唯一性 unique
默认值 default
自动 auto_increment
函数:

随机数 rand()
连接字符串 concat('中国','打日本')
转换小写 lcase('ABC') lower
转换大写 upper ucase
去除空格 trim(str)
获取日期

curdate()+0  返回20160916
curdate() 2016-09-16

时间

curtime()

日期时间 now()
时间戳

UNIX_TIMESTAMP(), UNIX_TIMESTAMP(now()) 日期转换时间戳
FROM_UNIXTIME( 1539659520) 时间戳转换成日期时间

月份

 month('2016-04-28')

季度,1,2,3,4

QUARTER('2016-04-28')

星期

DAYOFWEEK('2016-04-28') 1是星期日
weekday 0是星期1

天数

DAYOFYEAR('2016-04-28') 1-366

年 year
分钟 minute
小时 hour
秒 second
版本version

聚合函数
avg(col) 平均值
count(*) 记录数
min(col) max(col)最小 最大值
sum(col)求和

SET NAMES utf8 设置编码
基本查询

select * from biao

条件

select * from biao where id=1

结果字段不重复

select distinct id from biao

排序,默认升序asc,降序desc

select  * from biao order by id;
select * from biao order by id desc ,time asc;

分组,having 限定条件

select  * from biao group by sex;
select * from biao group by sex having;

查询条数

select  * from biao limit 4 返回4条
select * from biao 4,3 返回3条,从第5条记录开始

内连接两个功能相同

select a,b,c from A inner join B on A.id = B.id;
select a,b,c from A,B where A.id=B.id;

左右连接

select * from A left join B on   A.id=B.id;
select * from A right join B on A.id=B.id;

子查询

select id from Table where id2 in(select id3 from Table2)

合并结果集

select * from A union all select * from B
select * from A union select * from B 去重复

表或字段别名

select   id as ID from A as a 


插入


insert into Table(id,name) values (null,'Li') ;插入数据
insert into T(id,name) values (null,'Li'),(null,"Zhao");
insert into T values (null,"Li",null,"数据");插入所有列
insert into T(id,name) select id,name from T2; 查询插入
insert ignore into Table(id,name) values (null,'Li') ; 唯一索引插入 有效防止重复数据

修改


update T set name='Li' where id=1; 更新
update t set num=num+1 where id=1 自动加一
update T left join T1 on T.id=T1.id set u='1',u1='2' where id=1;多表更新
update T set user=replace(user,'a','a1') 替换表字段

删除


delete from T where id =1;删除
delete from T where id in(1,2,3);删除多条

清空


truncate  table  test

常用的查询:
select * from ims_rank where DATE_SUB(CURDATE(),INTERVAL 7 DAY) <= date(createtime); 七天之前数据 30天
select * from ims_rank where to_days(createtime) =to_days(now()); 今天数据
select * from ims_rank where TO_DAYS( NOW( ) ) -TO_DAYS( createtime) <= 1 昨天今天数据
select * from ims_rank where DATE_FORMAT( createtime,'%Y%m' ) = DATE_FORMAT( CURDATE( ) , '%Y%m' )本月
select * from ims_rank where PERIOD_DIFF( date_format(now( ) , '%Y%m' ) , date_format( createtime, '%Y%m' ) ) =1 上月
select * from ims_rank where YEARWEEK(date_format(createtime,'%Y-%m-%d')) =YEARWEEK(now()); 本周(第一天星期日)
select * from ims_rank where YEARWEEK(date_format(createtime,'%Y-%m-%d')) = YEARWEEK(now())-1; 上周数据




数据库mysql原生代码基本操作的更多相关文章

  1. 【django后端分离】mysql原生查询命令后,RawQueryset类型的自定义序列化返回json格式

    1:设置mysql原生分页 # 监控系统首页显示分页 def MyPagination(limitid,offsetid): limitid =str(limitid) offsetid =str(o ...

  2. PHP数据库操作:从MySQL原生API到PDO

    本文将举详细例子向大家展示PHP是如何使用MySQL原生API.MySQLi面向过程.MySQLi面向对象.PDO操作MySQL数据库的. 为了后面的测试,先建立数据库表test.包含表名user,s ...

  3. Php连接及读取和写入mysql数据库的常用代码

    在这里我总结了常用的PHP连接MySQL数据库以及读取写入数据库的方法,希望能够帮到你,当然也是作为我自己的一个回顾总结. 1.为了更好地设置数据连接,一般会将数据连接所涉及的值定义成变量. $mys ...

  4. 数据库MySQL的基本操作

    1.MySQL数据库的安装: CentOS6上mysql服务端和客户端的安装和启动: #使用yum安装mysql数据库的服务端和客户端 yum install -y mysql mysql-serve ...

  5. 一个非常标准的连接Mysql数据库的示例代码

    一.About Mysql 1.Mysql 优点 体积小.速度快.开放源码.免费 一般中小型网站的开发都选择 MySQL ,最流行的关系型数据库 LAMP / LNMP Linux作为操作系统 Apa ...

  6. MySQL<数据库和表的基本操作>

    数据库和表的基本操作 数据库基础知识 创建数据库 就是在数据库系统中划分一块存储数据的空间 CREATE DATABASE itcast; 查看数据库 SHOW CREATE DATABASE 数据库 ...

  7. Mariadb/MySQL数据库单表查询基本操作及DML语句

    Mariadb/MySQL数据库单表查询基本操作及DML语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一数据库及表相关概述 1>.数据库操作 创建数据库: CREATE ...

  8. 云原生数据库mysql对共享存储分布式文件系统的接口需求分析

    1. 引言 云原生数据库跟分布式mpp数据库是有差异的,虽然两者都是计算与存储分离,但是在资源的占用上有所不同.云原生数据库是shard everything架构,其依赖的存储资源.内存资源.事务资源 ...

  9. MySQL原生API、MySQLi面向过程、MySQLi面向对象、PDO操作MySQL

    [转载]http://www.cnblogs.com/52fhy/p/5352304.html 本文将举详细例子向大家展示PHP是如何使用MySQL原生API.MySQLi面向过程.MySQLi面向对 ...

随机推荐

  1. 【转】Flex 布局

    网页布局(layout)是CSS的一个重点应用. 布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性.它对于那些特殊布局非常不方便,比如,垂直居中 ...

  2. git 安装 使用

    git 安装--------------------------------------yum install git -y git 下载项目----------------------------- ...

  3. kvm virsh命令详解

    [root@ok home]# virsh list Id Name State ---------------------------------------------------- 1 13sv ...

  4. plotting and saving over line in paraView

    probe -- provides the field values in a particular location in space To save plotoverline to csv fil ...

  5. C++ 输入外挂

    inline int read() { int x=0;char ch=getchar(); while(ch<'0'||ch>'9')ch=getchar(); while(ch> ...

  6. IOC容器Autofac使用

    今天我沉浸在IOC的设计模式追求中,听了很多课,也看了很多例子,这个是我的一个测试项目 为了测试代码,我首先准备了两个类一个Car和接口ICar,这两个类和我们平时项目中的DAL与IDAL相似,现在我 ...

  7. 初次使用Let's encrypt

    wget --no-check-certificate -O shadowsocks.sh https://raw.githubusercontent.com/teddysun/shadowsocks ...

  8. NYOJ35 表达式求值

    表达式求值 时间限制:3000 ms  |  内存限制:65535 KB 难度:4   描述 ACM队的mdd想做一个计算器,但是,他要做的不仅仅是一计算一个A+B的计算器,他想实现随便输入一个表达式 ...

  9. 为什么Linux下的环境变量要用大写而不是小写

    境变量的名称通常用大写字母来定义.实际上用小写字母来定义环境变量也不会报错,只是习惯上都是用大写字母来表示的. 首先说明一下,在Windows下是不区分大小写的,所以在Windows下怎么写都能获取到 ...

  10. WPS for Linux字体配置(Ubuntu 16.04)

    错误提示: 解决方法: 从http://bbs.wps.cn/thread-22355435-1-1.html下载字体库,离线版本:(链接: https://pan.baidu.com/s/1i5dz ...