欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

实习--Day5

程序员文章站 2022-07-23 11:47:51
2020/7/28依旧是和sql有着不解之缘的一天总结一下在python中用sql语句的一些汇总insertinsert into tablename(column1,column2...) values(value1,value2...)insert into tablename(column1,column2...) values(%s,%s...)---->然后你要传数据到这个里面去,数据的形式就是(value1,value2...),如果是insertmany也就是底层还是...

2020/7/28

依旧是和sql有着不解之缘的一天

总结一下在python中用sql语句的一些汇总

insert

insert into tablename(column1,column2...) values(value1,value2...)
insert into tablename(column1,column2...) values(%s,%s...)---->然后你要传数据到这个里面去,数据的形式就是(value1,value2...),如果是insertmany也就是底层还是调用这个insert,只是你需要给出的数据是value集,也就是[(),()...]这种形式,每个元组代表一行
insert into tablename(column1,column2,column3...) values(%s,%s,0)--->也可以用常数这里


update

update tablename set column1=%s where condition --->同样的updatemany也是要构造数据集
update tablename set column1={} where condition.format(value)--->通过变量赋值进行update


select

select * from tablename inner join tablename on condition where condition--->这里的condition也可以用format的形式用变量来赋值

导师改了要求:

我原来写的那个流程不用太大改变,但是需要加功能。

现在流程:status:0未处理,timestamp正在处理,2处理结束

在另一个进程中需要取原始数据表t1中取status=0的数据行,将这些数据行的两个字段取出来,将这两个字段insert到另一个表t2的两个字段里面,自增主键不用自己写,并且将另一个表中的status初始化为0

然后我的进程里面要处理的t2的数据,所以先将status中为0的变成timestamp,然后select连表查询根据timestamp为条件查询出来,然后我进程中启动两个线程将连表查询出来的结果进行数据分析,然后将分析后的结果update写入t2的其余字段,同时将status变成2

这只是一次流程,我们在外层还需要循环,进行不断处理,所以有一个定时器的装饰器,还有个循环,就是说有数据就再循环里面不断处理,知道没有数据了,跳出循环,然后定时器等待个一定时间,再次进入循环处理

 

Linux下面:

 

1> : 代表标准正确输出,即如果命令的执行结果是正确,则执行输出,而且1>可以简写成>

2> : 代表标准错误输出,即如果命令的执行结果是错误,则执行输出

&>: 代表标准正确输出+标准错误输出

查看进程中带python关键字的:ps axf | grep python  

某个进程 &:后台运行这个进程

tail [-f]:代表从文档的尾部开始看,并且实时更新

nohub:

用途:不挂断地运行命令。

语法:nohup Command [ Arg … ] [ & ]

nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示”and”的符号)到命令的尾部。

 

pandas:DataFrame.iterrows()---->得到一个可以用字段名来访问的迭代器,有index

本文地址:https://blog.csdn.net/HWQlet/article/details/107629420

相关标签: 杂项