基础的mysql语句+将mysql做成服务

SELECT now();    //执行mysql函数用select

select DATE_ADD(FROM_UNIXTIME(create_time/1000,'%Y-%m-%d %h:%i:%s'),INTERVAL 0 HOUR),`hash`,order_no  from tb_transaction where create_time>=UNIX_TIMESTAMP('2018-05-08 00:00:00')*1000 order by id desc;

SELECT SUM(a.amount) as '金额',COUNT(1) as "数量",b.ch_name AS '币种类型' from tb_transaction a  JOIN tb_coin b  on b.type = a.coin  WHERE  a.state = 1 AND a.type = 4 GROUP BY a.coin;

 

SELECT coin_id,task_status,COUNT(1) FROM tb_address WHERE  is_use = 1  GROUP BY coin_id,task_status;

 

SELECT coin_id,count(t1.id),count(t2.id) from tb_address t1 LEFT join tb_address_keys t2 ON t1.id = t2.ta_id GROUP BY t1.coin_id 

 

SELECT t.address,b.private_key from tb_address t JOIN tb_address_keys b ON t.id = b.ta_id WHERE t.address in ("1NdnyEJZBx9weQNuQ8skNUdbSMeqADmJ1o","151EbbZBuiSdfnh7rXWAirmg3wKUd8BGPc","182rHAnUQP9tP9P73udYZhstUGnjVnM4D6","1Bm5Zyszog5kea77HqfFaX6JZmpKLgn9ix","36jMV1xrCHMXAV5Rmx5tUNFUdYErRCJ9vS","3LvSUVC2TmB9ByaWGS2wM7C6cDB4wMYUuB","3DCg3acYLMYBAHbqe1bE3H8GzsxxRSnX77"); 

 

 

  UNIX_TIMESTAMP()*1000   //当前时间戳

 

SELECT id FROM tb_push_info WHERE `hash` NOT in(SELECT `hash` FROM tb_hash)  OR to_address NOT in(SELECT address from tb_address)    //查询

 

select * from tb_address_keys where ta_id in ( select ta_id from tb_address_keys group by ta_id having count(*)>=2 )

 select sum(task_status='0') as '未处理',
sum(task_status='1') as '已处理',
sum(task_status='2') as  '处理中'
from tb_address  

 

select distinct(coin_id) from tb_address where status = 2;

 

 SELECT count(hash) FROM tb_transaction a
WHERE a.from_address NOT in(SELECT b.address from tb_address b)
and a.coin='00300000' 

 

UPDATE tb_coin set abi_address = LOWER(abi_address);  // 自己更新自己
UPDATE tb_coin set collect_address = LOWER(collect_address);

 

select FROM_UNIXTIME(a.create_time/1000) as '创建时间', 
FROM_UNIXTIME(a.update_time/1000)  as '更新时间'
from tb_address a
where a.address='aaaaaaaa'

SELECT c.ch_name,
COUNT(t.coin_id) 总,
SUM(CASE WHEN t.is_use=1 THEN 1 ELSE 0 END) AS 已用,
SUM(CASE WHEN t.is_use=0 THEN 1 ELSE 0 END) AS 未用,
SUM(CASE WHEN t.is_use=0 AND t.is_activate=0  THEN 1 ELSE 0 END) AS 未用未激活,
SUM(CASE WHEN t.is_use=0 AND t.is_activate=1  THEN 1 ELSE 0 END) AS 未用已激活

FROM 
tb_address t
LEFT JOIN tb_coin c ON c.id = t.coin_id

GROUP BY t.coin_id

 

SELECT 
a.id as id,
a.user_id as 用户id,
a.role_id as 角色id,
b.permis_id as 权限id ,
c.url as 菜单
from sys_user_role a
LEFT JOIN sys_role_permis b ON a.role_id = b.role_id 
LEFT JOIN sys_permis c on b.permis_id = c.id WHERE a.user_id=2;

 

 mysql的数据类型--基础

int            范围小     整数

bigint      范围大

float       float(m,n)  #m为几位数,n为有效小数位

data       yyyy-mm-dd

time       hh:mm:ss

datetime  yyyy-mm-dd hh:mm:ss

char       范围小

varchar 范围大

timestamp       YYYY-MM-DD HH:MM:SS   1970-01-01 00:00:01 ~ 2038(相比datetime范围小但可以自动写)


 

例子:

create table t8 (
  `id1` timestamp NOT NULL default CURRENT_TIMESTAMP,
  `id2` datetime default NULL
);

 

ALTER TABLE `login` ADD PRIMARY KEY (`uid`);

ALTER TABLE `login` MODIFY `uid` int(11) NOT NULL AUTO_INCREMENT;  //设置主键和自增

 

//将mysql做成服务

C:\xampp\mysql\bin> mysqld --install mysqld

                                      服务名字 端口号默认3306

##net start  mysql  记得要用管理员打开cmd

 

0.在之前要用户权限

cmd  -->mysql -uroot

1.创建一个数据库

create database database_namecharset=utf8;

设置库的时候要设置库的编码格式

2.删除一个数据库

drop database database_name;

3.选择一个数据库

use database_name;

4.创建数据表

create table table_name (name type);

例子:

crate table std(

useId int,

useName VARCHAR(64)

)

5.查看有哪些数据库

show databases;

6.查看数据库中有哪些表

show tables;

7.插入数据

insert into table_name values('value1','value2')

8.查看表里面的所有数据

select * from mysql.user   在不指定数据库的情况下用 .

select * from table_name 

select * from table_name where id=1

select name from table_name where id=1

select field1,field2 from table1,table2

select * from table_name order by  ID  asd升序/desc降序  //这个就会显示升序或降序的查询结果了

select * from table_name limit m,n       //限制查询个数m为起始位置m从0 开始   n为个数

查询当前这周的数据 
SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now()); 

查询上周的数据 
SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now())-1; 

查询当前月份的数据 
select name,submittime from enterprise where date_format(submittime,'%Y-%m')=date_format(now(),'%Y-%m') 

查询距离当前现在6个月的数据 
select name,submittime from enterprise where submittime between date_sub(now(),interval 6 month) and now(); 

查询上个月的数据 
select name,submittime from enterprise where date_format(submittime,'%Y-%m')=date_format(DATE_SUB(curdate(), INTERVAL 1 MONTH),'%Y-%m') 

select * from `user` where DATE_FORMAT(pudate,'%Y%m') = DATE_FORMAT(CURDATE(),'%Y%m') ; 

select * from user where WEEKOFYEAR(FROM_UNIXTIME(pudate,'%y-%m-%d')) = WEEKOFYEAR(now()) 
 

9.修改表数据

update table_name set name="..."

update table_name set name="..." where id=1 [and pwd=.....] ;

10.where的用法

where id=".." and name="...."

where id=".." or name="..."

where id=".." and name="..." or pwd="...."

where sn is null    //查询默认值是null的数据用 is

注意and优先级比较高

11 删除数据

delete from table_name [ where id=1 ]

 

12 sql 设置默认值以及使用场合

     create table table_name(

   id int primary key auto_increment,

  complete int not null default 1

);

 insert into table_name(id) values(null);

只有这样complete 才出来默认值1

   insert into table_name(id,complete) values(null,null);//会报错 complete 不能为null

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值