首页 > 数据库 >SQL脚本快速生成随机测试数据

SQL脚本快速生成随机测试数据

时间:2024-07-06 15:53:21浏览次数:12  
标签:10 dbms random 00 测试数据 随机 https SQL value

Oracle

create table TestTable as
  select lower(sys_guid()) AS guid,
         rownum as inc_id,
         trunc(dbms_random.value(0, 100)) as random_id,
         trunc(dbms_random.value()*power(10, 3), 8) as random_decimal1,
         trunc(dbms_random.value()*power(10, 8), 2) as random_decimal2,
         sysdate - 1 + rownum/24/3600 as inc_datetime,
         to_timestamp(systimestamp -1 + trunc(dbms_random.value(1, power(10, 8)))/24/3600)  as random_timestamp,
         substr( dbms_random.string('x', 100), 0, trunc(dbms_random.value(10, 100))) as random_string,
         to_clob(dbms_random.string('x', power(10, 6))) as random_clob
  from dual
     connect by level <= 1000000;

 

PostgreSQL

SELECT gen_random_uuid() guid
     , 'user_' || (power(10, 7) + rowIndex)  code
     , repeat('1',(random()*25)::integer) as name
     , rowIndex
     , (random()*100.)::numeric(4,2) random_decimal
     , TIMESTAMP '2022-01-01 00:00:00' + (TIMESTAMP '2022-12-31 23:59:59' - TIMESTAMP '2022-01-01 00:00:00') * random() AS random_timestamp
FROM generate_series(1, 1000000) rowIndex;

 

SQL Server & MySQL

select  floor(rand()*N)     --FLOOR 函数返回小于或等于所给数字表达式的最大整数。

select  ceiling(rand()*N)  --CEILING 函数返回大于或等于所给数字表达式的最小整数。

循环 或借助其他表进行查询插入

 

参考资料:

https://blog.csdn.net/lizhangyong1989/article/details/45013509 

https://blog.csdn.net/eagle89/article/details/116276102

https://www.cnblogs.com/terrence/p/4218741.html

https://www.jianshu.com/p/cf5d381ef637

https://www.cnblogs.com/CareySon/archive/2012/02/20/2359444.html

https://www.cnblogs.com/superfeeling/p/9199707.html

https://blog.csdn.net/mysqltop/article/details/105230327

标签:10,dbms,random,00,测试数据,随机,https,SQL,value
From: https://www.cnblogs.com/zhaoguan_wang/p/18287334

相关文章

  • centos7服务器yum安装MySQL数据库,以及报错的解决方案
    文章目录1、数据库能做什么?2、数据库由来3、数据库-系统结构4、版本二、部署1、官网地址3.点击[DOCUMENTATION](https://dev.mysql.com/doc/)4.mysql的yum仓库[UsingtheMySQLYumRepository](https://dev.mysql.com/doc/refman/8.4/en/linux-installation-yum-repo......
  • SQLSugar 基本语法+数据库读写分离
    面向对象的操作数据库,相比EFCore、Dapper等其他ORM框架性能支持性能轻便快捷,数据库的读写分离能大大减轻数据库的压力一、NuGet下载安装SqlSugarCore二、实例化SqlSugarCore---包含数据库链接---指定数据库类型---增删改查,上代码这里演示使用控制台程序usingSqlSugar;......
  • 零基础学习MySQL---表的相关操作
    顾得泉:个人主页个人专栏:《Linux操作系统》 《C++从入门到精通》  《LeedCode刷题》键盘敲烂,年薪百万!一、创建表1.语法CREATETABLEtable_name(field1datatype,field2datatype,field3datatype)characterset字符集collate校验规则engine存......
  • 数据库——常用SQL语句
    title:数据库——常用SQL语句date:2024-07-0612:25:36tags:数据库categories:数据库cover:/image/T1.jpgdescription:数据库的常用SQL语句SQL语句SQL(StructuredQueryLanguage)是一种用于访问和操作数据库系统的标准编程语言。它允许用户执行各种数据管理任......
  • Oracle PL / SQL INTERVAL数据类型
    INTERVALYEARTOMONTH数据类型INTERVALYEARTOMONTH存储和操作年和月的间隔。语法是:INTERVALYEAR[(precision)]TOMONTHprecision指定“years”字段中的数字位数。我们必须在0..4的范围内使用整数字面值。默认值为2。以下代码显示如何将字面值分配到INTERVALY......
  • Oracle PL / SQL变量范围
    变量范围指的是当另一个PL/SQL块可以看到声明的项目时。在函数或过程的声明部分中声明的任何项只在同一函数或过程中可见。在包主体的声明部分中声明的任何项只在同一包主体中的任何其他项内可见。在包规范中声明的任何项目对于调用方法的所有者具有执行特权的任何其他存......
  • SQL语句优化
    SQL语句优化插入数据优化批量插入注:通过测试,若插入一千万条数据,不使用批量插入,每条一个insert需要耗费时间10分钟左右,但若是通过批量插入耗费时间为十几秒左右,由此可见使用批量插入可以极大的提高性能,同时减少多次访问数据库对数据库造成的压力。注:若在springboot或sprin......
  • Java面试八股之MySQL存储引擎都有哪些
    MySQL存储引擎都有哪些MySQL提供了多种存储引擎,每种引擎都有其独特的特性和用途。以下是一些常用的MySQL存储引擎:InnoDB默认存储引擎(自MySQL5.5版本起)。支持事务(ACID属性)、行级锁定和外键约束。使用B+树作为索引结构。适合需要高并发的事务处理和高可靠性的场景。MyISA......
  • sqlserver数据库MDF文件修复
    针对SQLServer数据库的MDF文件修复,这是一个相对复杂的过程,具体方法取决于文件的损坏程度、是否有备份以及数据库的状态。以下是一些常见的修复方法:使用备份恢复这是最直接且最可靠的方法。如果你有数据库的备份,并且备份是在MDF文件损坏之前创建的,那么你可以通过还原备份来恢......
  • MySQL 命名使用规范
    在数据库设计和开发过程中,命名规范是确保数据库结构清晰、易于维护和扩展的关键因素之一。良好的命名规范可以提高代码的可读性、可维护性和团队协作效率。本文将详细介绍MySQL数据库的命名使用规范,包括数据库、表、列、索引、约束、存储过程、函数、视图和触发器等方面的命名......