数据库(1):用sql在数据库中随机选择数据并保存在另一张表中

编程入门 行业动态 更新时间:2024-10-11 01:10:25

数据库(1):用sql在<a href=https://www.elefans.com/category/jswz/34/1771342.html style=数据库中随机选择数据并保存在另一张表中"/>

数据库(1):用sql在数据库中随机选择数据并保存在另一张表中

数据库(1):在数据库中随机选择数据

  • 一、问题
  • 二、sql语句
    • 1.用sql语言进行进行随机取数据
    • 2.将文件的数据进行打乱
    • 3.从文件 a 1 a_1 a1​和 b 1 b_1 b1​中随机抽取数据组成新文件
  • 三、其他语句
    • 1.删除某一行的值为Null
    • 2.删除某一列
    • 3.添加一列数据

一、问题

  本人在进行数据的处理时,就是在一个行数为245条数据excel文件中随机选取200条数据,分别存入到两个excel中,如存到文件 a 1 a_1 a1​和 b 1 b_1 b1​中,每个文件100条数据,且数据不能重复,并将文件 a 1 a_1 a1​和 b 1 b_1 b1​分别打乱,另存到文件 a 2 a_2 a2​和 b 2 b_2 b2​中,在刚开始的时候,本人用python的第三方库openpyxl进行文件的读取并保存,发现过程很繁琐以及浪费时间,所以,进行一些查找就用了sql语句,以下方式只适合用于小批量的数据。

二、sql语句

1.用sql语言进行进行随机取数据

本人的数据的格式为:

  如上图所示,一共就5列数据,首先我们先建立文件 a 1 a_1 a1​,其sql语句为:

# a_1为要建立的表格,second为总的表格
CREATE TABLE a_1 as SELECT * FROM second ORDER BY RAND() LIMIT 100

  建立好文件 a 1 a_1 a1​以后,我们要建立文件 b 1 b_1 b1​,要求为: b 1 b_1 b1​文件也要为100条数据,但是在文件 b 1 b_1 b1​中的数据和文件 a 1 a_1 a1​的数据不能相同,其sql语句如下:

CREATE TABLE b_1 as SELECT * FROM second WHERE not EXISTS(SELECT * from a_1 WHERE second.CASEID = a_1.CASEID) ORDER BY RAND() LIMIT 100

  接下来需要进行检查,因为文件的 c a s e i d caseid caseid是独一无二的,所以文件 a 1 a_1 a1​和文件 b 1 b_1 b1​的 c a s e i d caseid caseid是不相同的,我们用sql语句检查一下:

SELECT CASEID FROM a_1 WHERE EXISTS(SELECT CASEID from b_1 WHERE a_1.CASEID = b_1.CASEID)

  查询的结果如下:
  证明上面数据的分割是正确的

2.将文件的数据进行打乱

  在进行建立文件 a 1 a_1 a1​的时候,就已经用到了将数据打乱的语句

CREATE TABLE a_2 as SELECT * from a_1 ORDER BY RAND() LIMIT 100

  将打乱的数据保存在文件 a 2 a_2 a2​中

3.从文件 a 1 a_1 a1​和 b 1 b_1 b1​中随机抽取数据组成新文件

  从文件 a 1 a_1 a1​和 b 1 b_1 b1​中各自随机抽取50条数据组成一个新的表格C,其中C的数据为100条,sql语句为:

CREATE TABLE c as (SELECT * from a_1 ORDER BY RAND() LIMIT 50) UNION (SELECT * FROM b_1 ORDER BY RAND() LIMIT 50)

  可以检查以下结果:

  证明以上操作是正确的。

三、其他语句

1.删除某一行的值为Null

# domain 为列名
DELETE from second WHERE domain is NULL

2.删除某一列

# intent1 为列名
ALTER TABLE second DROP COLUMN intent1

3.添加一列数据

# intent_1 为要添加的列名,添加之后intent_1列的值为Null
ALTER TABLE second ADD COLUMN intent_1 VARCHAR(255)

更多推荐

数据库(1):用sql在数据库中随机选择数据并保存在另一张表中

本文发布于:2024-02-06 18:25:56,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1750694.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:数据库中   并保存   数据库   数据   张表中

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!