A表
ID 结果
001 10
002 12
003 12
B表
ID 结果
001 80
002 90
003 70
现在想等到即在a表中结果大于10的,又在b表中结果大于80的id,得到的id002,求这样的sql语句。
----------------------------------------------------------------
-- Author :TravyLee(物是人非事事休,欲语泪先流!)
-- Date :2012-11-07 09:05:30
-- Version:
-- Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (Intel X86)
-- Jul 9 2008 14:43:34
-- Copyright (c) 1988-2008 Microsoft Corporation
-- Developer Edition on Windows NT 6.1 <X86> (Build 7600: )
--
----------------------------------------------------------------
--> 测试数据:[a]
if object_id('[a]') is not null drop table [a]
go
create table [a]([ID] varchar(3),[结果] int)
insert [a]
select '001',10 union all
select '002',12
--> 测试数据:[b]
if object_id('[b]') is not null drop table [b]
go
create table [b]([ID] varchar(3),[结果] int)
insert [b]
select '001',80 union all
select '002',90 union all
select '003',90
--> 测试数据:[c]
if object_id('[c]') is not null drop table [c]
go
create table [c]([ID] varchar(3),[结果] int)
insert [c]
select '002',50 union all
select '003',60
--> 测试数据:[d]
if object_id('[d]') is not null drop table [d]
go
create table [d]([ID] varchar(3),[结果] int)
insert [d]
select '002',50 union all
select '003',60 union all
select '004',60
go
--a表中结果大于10的,
--又在b表中结果大于80的id,
--又在c表中结果大于40,
--又在d表中结果大于等于50
select
[ID]
from
a
where
exists(select 1 from b where a.ID=b.ID and b.结果>=80)
and exists(select 1 from c where a.ID=c.ID and c.结果>40)
and exists(select 1 from d where a.ID=d.ID and d.结果>=50)
and a.结果>=10
----------------结果----------------------------
/*
ID
----
002
(1 行受影响)
*/
select a.id
from a, b,c,d
where a.id=b.id and b.id=c.id and c.id=d.id
and a.结果>10 and b.结果>80 and c.结果>40 and d.结果>=50
select ID from A where 结果>10
intersect
select ID from B where 结果>80
intersect
select ID from C where 结果>40
intersect
select ID from d where 结果>=50
目录 SQL基础知识整理: 常见的SQL面试题:经典50题 三、50道面试题 ...sql面试题:topN问题 ...4.多表查询 ...【面试题类型总结】这类...select 查询结果 如:[学号,平均成绩:组函数avg(成绩)]from 从哪张表中查找数...
文章目录数据库基础知识为什么要使用数据库什么是SQL?什么是MySQL?数据库三大范式是什么mysql有关权限的表都有哪几个MySQL的binlog有有几种录入格式?分别有什么区别?数据类型mysql有哪些数据类型引擎MySQL存储...
select (( select count(1) from `user` ) + ( select count(1) from bill )) totalCount
如何用一条语句删除多张表数据,MySql适用,sqlite不可以。 按照正常逻辑是 delete * from tbl1 where id=2; delete * from tbl2 where id=2; delete * from tbl3 where id=2; 现在使用这样一条语句 ...
在给公司写代码的过程中忽然发现在sql语句中碰到一些小问题,虽然最终自己解决了,但是不得不说好不容易啊,故写此博客提醒自己,以免日后再在此处浪费时间。 需求: 有两张表,分别是marketChannelInfo表和...
今天想写一个Postgresql的sql语句,需求大概只这样: 表A和表B需要同时更新,共用一个更新条件,然后我不想分别写两条update分别更新A和B。 查询了大概两个小时之后,才明白 insert/update/delete都仅能影响单表...
比如 表1结构为: A B C 1 2 3 表2结构为: D E F 4 5 6 我要得到的结果为: A B C D E F 1 2 3 4 5 6 select A,B,C,D,E,F from (select row_num() over(...
表A---------------------------------关联第一张表B-----------------------关联第二张表c select * fomr 表名A left join 表B on 表A字段=表B的id left join 表c on 表A字段=表c的id ...
有五张表,传入一个ID,从第一张表开始查询跟这个数据相同的表,然后根据查询到的数据在去别的表中查询,最后只输出一张从Id开始查询的有关的表的数据,该怎写啊! 我写了两种写法,都不对,请问该怎写啊!![图片说明]...
在写SQL时,经常灵活运用一些SQL语句编写的技巧,可以大大简化程序逻辑。减少程序与数据库的交互次数,有利于数据库高可用性,同时也能显得你的SQL很牛B,让同事们眼前一亮。 目录 实用的SQL 1.插入或替换 2....
以员工表:emp 为例 id name gender birthday dept job sal bonus 编号 姓名 性别 生日 部门 职位 薪资 奖金 基本查询 – 查询emp表中的所有员工信息 select * from emp;...– 查询emp表中...
一、无条件查询:select * from tab order by tname 二、过滤查询:select * from tab where tname not like '%$%' order by tname
论SQL语句中的多表关系,以及实际作用 一对多 - 用于去重 - left join 要连接的表 on 唯一字段(标识) = 多字段 一对一 - 用于查询 - left join 要连接的表 on 唯一字段 = 唯一字段 多对一 - 用于分组 - left ...
现有6张表存在关联关系,要删除主表则其他5张表关联数据也要一块删掉(单条sql多id批量删除) delete t1,t2,t3,t4,t5,t6 FROM rmd_v AS t1 LEFT JOIN rmd_v1 AS t2 ON t1.uuid = t2.rvuuid LEFT JOIN rmd_v2 ...
1.部署定义流程所涉及到的表#流程部署表 select * from 'act_re_deployment'#流程定义表 select * from 'act_re_prodef'#资源文件表 select * from 'act_ge_bytearry'#系统配置表 select * from 'act_ge_property'2,...
这是一条颠覆常规的插入方法,一条INSERT语句可以完成向多张表的插入任务。小小地展示一下这种插入方法。 1.创建表T并初始化测试数据,此表作为数据源。 sec@ora10g> create table t (x number(10), y varchar2...
设计参考:... 1,翻译人、审核人、发布完成人 select t_user_role.iUserID,t_user.sAccount,t_user_role.sRoleID from t_user left join t_user_role on t_user_role.iUserID = t_user.iUse...
之前碰到一个需求需要多表连接,现在把需求简化一下作为一个学习的参考案例。 有三张表,如图。 为描述方便,分别用表1,表2和表3指代。 表1里面的ID和表2里面的ID有关联关系。 表2里面的ID_LINK和表3里面...
连接两个数据表的用法 : SELECT * FROM actor INNER JOIN film_actor ON actor.actor_id = film_actor.actor_id ; 语法格式可以概括为: FROM 表1 INNER JOIN 表2 ON 表1.字段号=表2.... ...连接三个数据表的用法: ...
转至 数据库(学习整理)----7--Oracle多表查询,三种join连接 ======================= 聚合函数:(都会忽略null数据) 常用的有5种:将字段中所有的数据聚合在一条中 1、sum(字段名) :求总和 2、avg...
多表关联,我现有多张表,想将数据提取出来,按照一个地区插入到一张新表中,但是这些多张表,有的比如有西安,但是有的有没有西安,所以会造成数据的丢失,有什么好的方法可以解决?在线跪求各位大神,急急急!!!
SQL语句实例 表操作 例 1 对于表的教学管理数据库中的表 STUDENTS ,可以定义如下: CREATE TABLE STUDENTS (SNO NUMERIC (6, 0) NOT NULL SNAME CHAR (8) NOT NULL AGE NUMERIC(3,0) ...
header("Content-Type:application/json;charset=utf-8"); require("conn.inc.php"); @$hid = $_REQUEST['hid'] or die('{"msg":"hid is required"}'); $sql = "SELECT * FROM kkf_community WHERE cid=(SELECT ci
最近写一个查询列表的功能,写sql的时候开始犯迷糊,已经知道的表与表的关系,但是还是花了很长时间查询出想要的数据,现在给大家分享一个简单的sql,很实用,方便大家写sql语句。首先,两张表的联合查询,很简单:...
Select * into d from (Select * from a union Select * from b union Select * from c)as e 对是对,但是执行了没显示新表
第1章 多表关系实战1.1 实战1:省和市l 方案1:多张表,一对多l 方案2:一张表,自关联一对多 1.2 实战2:用户和角色l 多对多关系1.3 实战3:角色和权限l 多对多关系1.4 实战4:客户和联系人(可选)l 一对...
MySQL 涉及的内容非常非常非常多,所以面试题也容易写的杂乱。当年,我们记着几个一定要掌握的重心: 重点的题目添加了【重点】前缀。 索引。 锁。 事务和隔离级别。 因为 MySQL 还会有部分内容和运维相关度比较...
SQLite中:SELECT COUNT(*) as CNT FROM sqlite_master where type='table' and name='table_name'; Mysql中:"select COUNT(`TABLE_NAME`) from `INFORMATION_SCHEMA`.`TABLES` where `TABLE_SCHEMA`='database_...
insert a.id into #kkk select a.id from a,b where a.id=b.id delete from a where a.id in(select id from #kkk) delete from b where b.id in(select id from #kkk) ------------------------- ...
1. 我要查出学生的学号,班级,姓名,选课题目,指导老师,下面是4张表的结构: 1. 1. 学生信息表(tstudentInfo):ID,class,name 2.老师信息表(tteacherInfo):ID,name 3.课题表(tproject):teacherID ,projectID...