当前位置: 首页 > news >正文

在线 SQL 模拟器SQL Fiddle使用简介

在线 SQL 模拟器SQL Fiddle使用简介

本文可作为“SQL语言与SQL在线实验工具的使用” https://blog.csdn.net/cnds123/article/details/115038700 一文的补充。

有时候,我们想去验证 SQL语句,却缺少数据库环境,那该怎么办呢?

这时候在线 SQL 模拟器就有了用武之地。SQL 模拟器免安装,可以在网页直接运行 SQL 。

SQL Fiddle 支持 MySQL、Oracle、PostgreSQL、SQLite、MS SQL Server等主流数据库,不需要注册即可使用。注意,没有缓存功能,关闭窗口后需要重新建表和插入数据。

打开SQL Fiddle 网址http://sqlfiddle.com/ 后,如下图所示:

左边栏用于构建表结构、初始化数据,右边栏放置要执行的 SQL,点击“Run SQL” 按钮就会执行 SQL,结果将在下边输出。

网页上方菜单栏包含一个“MySQL 5.6”下拉框,改下拉框可以选择数据库类型及版本,当前支持的有MySQL 5.6、Oracle 11g R2、Postgr等免费在线SQL数据库。

按钮“View Sample Fiddle”给出和其右边下拉框选定的数据库类型及版本相关的默认示例。

按钮“Clear” 可以清除下面两个面板的输入内容。

左边栏用于构建表结构、初始化数据,右边栏放置要执行的 查询语句。

参见上图,在左边栏输入:

create table students(
  id int unsigned primary key,
  name varchar(10) not null,
  age int(3)
);

INSERT INTO students (id, name, age) VALUES 
 (1, '张三', 20),
 (2, '李四', 22),
 (3, '王五', 21),
 (4, '赵六', 23);

单击“Build Schema”按钮,构建表结构、初始化数据,若语句不符合语法则报错。若不报错,则可以右边栏输入查询语句:

select * 
from students;

若语句不符合语法则报错。若不报错,就会在下面的窗格显示查询结果。参见上图。

如果想查询符合某个条件的记录,就要用到where子句了,SQL格式为:
select * from <tablename> where 字段名=值;

例如:

select * 
from students
where name = '李四';

下面给出较为复杂的SQL语句,供练习用。

创建3张表并向表中添加数据

CREATE table student(
Sno CHAR(9) PRIMARY KEY,
Sname CHAR(20) UNIQUE,
Ssex char(2),
Sage SMALLINT,
Sdept char(20)
);

INSERT into Student values
(201215121,'李勇','男',20,'CS'),
(201215122,'刘晨','女',19,'CS'),
(201215123,'王敏','女',18,'MA'),
(201215125,'张立','男',19,'IS');


CREATE TABLE course(
Cno CHAR(4) PRIMARY KEY,
Cname CHAR(40) NOT NULL,
Cpno CHAR(4) NULL,
Ccredit SMALLINT
);

insert into course VALUES
('1','数据库','5',4),
('2','数学','',2),
('3','信息系统','1',4),
('4','操作系统','6',3),
('5','数据结构','7',4),
('6','数据处理','',2),
('7','Java语言','6',4);


CREATE table SC(
Sno char(9),
Cno char(4),
Grade SMALLINT
);

insert into sc values
(201215121,1,92),
(201215121,2,85),
(201215121,3,88),
(201215122,2,58),
(201215122,3,80);

连接查询

查询每个学生及其选修课的情况
select student.*,sc.*
from Student,sc
where student.Sno=sc.Sno

查询每个学生的学号,姓名,选修的课程名及成绩
select student.Sno,Sname,Cname,Grade
from student,sc,course
where student.Sno=sc.Sno AND
      sc.Cno=course.Cno

查询选修2号课程且成绩在80分以上的所有学生的学号和姓名
select student.Sno,Sname
from Student,sc
where student.Sno=sc.Sno and 
      sc.Cno='2'   and 
      sc.Grade>=80

常用SQL语句可参见https://blog.csdn.net/promsing/article/details/112793260

http://www.lryc.cn/news/250875.html

相关文章:

  • 仿京东淘宝商品列表筛选组件:实现一个高效的侧边栏弹框筛选功能
  • 软件工程 - 第8章 面向对象建模 - 4 - 物理体系结构建模
  • 【智能家居】二、添加火灾检测模块(烟雾报警功能点)
  • history和hash两种路由模式原理,和优缺点
  • Nginx 具体应用
  • 计算机网络之网络传输,三次握手和四次挥手
  • Azure Machine Learning - 在 Azure AI 搜索中创建全文查询
  • 基于YOLOv8深度学习的钢材表面缺陷检测系统【python源码+Pyqt5界面+数据集+训练代码】目标检测、深度学习实战
  • 深度学习常见回归分支算法逐步分析,各种回归之间的优缺点,适用场景,举例演示
  • Programming Contest 2023(AtCoder Beginner Contest 331)D题 Tile Pattern --- 题解
  • Google测试框架googletest简介与使用方法
  • 进程的创建:fork()
  • Fabric:创建应用通道
  • 力扣每日一题(2023-11-30)
  • 内部类Lambda
  • 设一棵二叉树中各结点的值互不相同,其先序遍历序列和中序遍历序列分别存于两个一维数组A[1...n]和 Bfl...n]中,试编写算法建立该二叉树的二叉链表。
  • 什么是Daily Scrum?
  • 逆波兰表达式求值[中等]
  • Oracle连接和使用
  • redis单线程为什么这么快
  • 工业机器视觉megauging(向光有光)使用说明书(五,轻量级的visionpro)
  • 【LittleXi】2023年广东工业大学腾讯杯新生程序设计竞赛
  • 【C语言:数据在内存中的存储】
  • 每日一练:阿姆斯特朗数
  • fatal: remote error: upload-pack: not our ref (未解决问题)
  • Python 3 使用 read()、readline()、readlines() 函数 读取文件
  • 勒索解密后oracle无法启动故障处理----惜分飞
  • Leetcode144. 二叉树的前序遍历-C语言
  • dmesg命令在软件测试中的实际应用
  • 【渗透】记录阿里云CentOS一次ddos攻击