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

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

有时候,我们想去验证 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 = '李四';

创建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

相关推荐
白露与泡影3 分钟前
Redis:我是如何与客户端进行通信的
数据库·redis·缓存
一只小bit4 小时前
MySQL 索引:从聚簇到普通索引,如何加快查询效率?
数据库·mysql·oracle
洛克大航海6 小时前
解锁 PySpark SQL 的强大功能:有关 App Store 数据的端到端教程
linux·数据库·sql·pyspark sql
XueminXu8 小时前
ClickHouse数据库的表引擎
数据库·clickhouse·log·表引擎·mergetree·special·integrations
冒泡的肥皂8 小时前
MVCC初学demo(二
数据库·后端·mysql
代码程序猿RIP8 小时前
【Redis 】Redis 详解以及安装教程
数据库·etcd
小生凡一8 小时前
redis 大key、热key优化技巧|空间存储优化|调优技巧(一)
数据库·redis·缓存
oe10198 小时前
好文与笔记分享 A Survey of Context Engineering for Large Language Models(上)
数据库·笔记·语言模型·agent·上下文工程
小马哥编程8 小时前
【软考架构】案例分析-对比MySQL查询缓存与Memcached
java·数据库·mysql·缓存·架构·memcached
一 乐8 小时前
高校后勤报修系统|物业管理|基于SprinBoot+vue的高校后勤报修系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·毕设