首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

SQL -显示Table2中没有数据的Table1的数据(主键)(FK)

SQL是结构化查询语言(Structured Query Language)的缩写,是一种用于管理关系型数据库的编程语言。它可以用于创建、修改和查询数据库中的表、数据和关系。

要显示Table2中没有数据的Table1的数据,可以使用左连接(LEFT JOIN)和IS NULL条件来实现。具体的SQL查询语句如下:

代码语言:txt
复制
SELECT Table1.*
FROM Table1
LEFT JOIN Table2 ON Table1.主键 = Table2.FK
WHERE Table2.FK IS NULL;

上述查询语句中,Table1和Table2分别表示两个表的名称,主键和FK分别表示主键和外键的列名。

这个查询语句的作用是将Table1中的数据与Table2中的数据进行左连接,然后通过WHERE子句过滤出Table2中没有匹配数据的Table1的数据。

对于腾讯云的相关产品,可以使用腾讯云数据库(TencentDB)来存储和管理数据。腾讯云数据库提供了多种类型的数据库,如云数据库MySQL、云数据库MariaDB、云数据库SQL Server等,可以根据具体需求选择合适的数据库产品。以下是腾讯云数据库的产品介绍链接地址:

通过使用腾讯云数据库,可以方便地进行数据存储和管理,并且腾讯云提供了丰富的功能和工具来保障数据的安全性和可靠性。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

SQLServer 学习笔记之超详细基础SQL语句 Part 1

(20) ) --在表添加数据[右击表\打开表\手动输入] --删除表table1全部数据[不可撤销] TRUNCATE TABLE table1 --给表table1添加主键约束,选择列为...id,把表table2id列作为table1外键约束 CREATE TABLE table2 ( id INT NOT NULL, name CHAR(20) ) --为表table1...添加主键约束 ALTER TABLE table1 ADD CONSTRAINT pk_key PRIMARY KEY CLUSTERED(id) --为表table2添加主键约束[注意两个表主键名不能一样...\手动输入] --删除表table1全部数据[不可撤销] TRUNCATE TABLE table1 --给表table1添加主键约束,选择列为id,把表table2id列作为table1...table1 ADD CONSTRAINT pk_key PRIMARY KEY CLUSTERED(id) --为表table2添加主键约束[注意两个表主键名不能一样] ALTER

64420
  • INSERT INTO SELECT语句与SELECT INTO FROM语句区别

    :Insert into Table2 select * from Table1 注意: (1)要求目标表Table2必须存在,并且字段field,field2…也必须存在 (2)注意Table2主键约束...,如果Table2主键而且不为空,则 field1, field2…必须包括主键 (3)注意语法,不要加values,和插入一条数据sql混了,不要写成: Insert into Table2(field1...a, c, d) select a,c,5 from Table1 或:Insert into Table2 select * from Table1 --4.显示更新后结果 select * from...into Table2 from Table1 要求目标表Table2不存在,因为在插入时会自动创建表Table2,并将Table1指定字段数据复制到Table2。...select a,c INTO Table2 from Table1 --4.显示更新后结果 select * from Table2 --5.删除测试表 drop TABLE Table1 drop

    1.7K10

    MySQL入门详解(一)---mysql语言

    主键索引:primary 在一个表唯一,值不能重复,在数据查写读时能按一定顺序和排列工作 唯一键:unique 一个表可以同时给多个字段设置unique,设置了字段值不能重复null...除外 普通索引:index 没有其他约束 文本索引:fulltext 5.7版本之后使用,加快大批量文本查找效率 mysql外键 副表主键字段与主表主键字段关联,那么这个副表主键字段称为外键...在副表添加一个主键不存在数据,操作会报错 ​ 如果在主表修改或删除,副表中有对应数据,主表会默认阻止 #创建外键 [CONSTRAINT constraint_name] #约束名...内连接: ... from table1 inner join table2 on table1.name=table2.name; 外连接 分为左连接和右连接 左连接:包含所有左边表记录,甚至是右边表没有和他匹配记录...... from table1 left join table2 on table1.name=table2.name; 右连接:包含所有右边表记录,甚至是右边表没有和他匹配记录。

    1.2K30

    SQL LEFT JOIN 左表合并去重实用技巧

    左表(A)记录会全部显示,而右表(B)只会显示符合条件表达式记录,如果在右表(B)没有符合条件记录,则记录不足地方为NULL。...重复结果没显示出来 SELECT DISTINCT(a.id), a.*, b.type FROM table1 a LEFT JOIN table2 b ON a.sponsor_id...(搜索公众号SQL数据库开发,回复“SQL”,送你一份SQL学习宝典) 比如有个主表M,卡号是主键。...B.联系方式='2' )B ON A.客户号=B.客户号 这么写的话,A表数据肯定会完全保留,又能与B表匹配,不会丢失数据。...A表所有记录都会显示,A表没有被匹配行(如aid=5、6行)相应内容则为NULL。 返回记录数一定大于A表记录数,如A表aid=7行被B表匹配了3次(因为B表有三行bid=7)。

    1.6K10

    Access数据库相关知识

    “实体” *主键,是表每条数据唯一识别编码。...比如,公园到访者数据表,可能包含实体有:公园信息(主键是公园编号),到访者信息(主键是到访者编号),到访者居住地信息(主键是居住地编号)一共有2个实体,即3张表。...:类似Excel显示界面,用于显示数据;2)设计视图,用于限定、备注、创建、删除字段;3)SQL视图,用于书写SQL查询语句 SQL语句符合英文语言习惯:我要选择什么数据,从哪个表,限定条件是什么,查询结果如何排序...by列出,没有使用聚合函数列一定要在Group by 列出。...) AS A,Table2 AS B WHERE A.Column3=B.Column4 iii 联合查询 把两次查询结果放在一张表显示,前提是他们字段数目相同 Select Column

    3.8K10

    SQL LEFT JOIN 左表合并去重实用技巧

    左表(A)记录会全部显示,而右表(B)只会显示符合条件表达式记录,如果在右表(B)没有符合条件记录,则记录不足地方为NULL。...第一个表唯一数据 重复结果没显示出来 SELECT DISTINCT(a.id), a.*, b.type FROM table1 a LEFT JOIN table2 b ON a.sponsor_id...B.联系方式='2' )B ON A.客户号=B.客户号 SQL 这么写的话,A表数据肯定会完全保留,又能与B表匹配,不会丢失数据。...换句话说,左表A记录将会全部表示出来,而右表B只会显示符合搜索条件记录(例子为: A.aid = B.bid),B表记录不足地方均为NULL....A表所有记录都会显示,A表没有被匹配行(如aid=5、6行)相应内容则为NULL。 返回记录数一定大于A表记录数,如A表aid=7行被B表匹配了3次(因为B表有三行bid=7)。

    99510

    MySQL 8.0.23新特性 - 不可见列

    | +----+--------+ 再一次,如预期,我们看到不可见列没有显示。...所有的二级索引也将主键作为索引最右边列(即使没有公开)。这意味着当使用二级索引检索一条记录时,将使用两个索引:二级索引指向用于最终检索该记录主键。...主键会影响随机I/O和顺序I/O之间比率以及二级索引大小。 随机主键还是顺序主键? 如上所述,数据存储在聚簇索引表空间中。...如果主键没有定义,我们如何使用它为InnoDB表添加主键。 如之前所述,好主键对InnoDB很重要(存储,IOPS,二级索引,内存等)但是MySQL主键还有一个重要作用:复制!...使用组复制要求之一是要有一个主键(这就是为什么可以使用sql_require_primary_key)。 我们使用上例重构表,不加主键,检查该实例能否作为InnoDB Cluster: ?

    1.4K10

    insert into select 和 insert into values区别「建议收藏」

    大家好,又见面了,我是你们朋友全栈君。 INSERT INTO SELECT语句:从一个表复制数据,然后把数据插入到一个已存在。...将一个table1数据部分字段复制到table2,或者将整个table1复制到table2, 这时候我们就要使用SELECT INTO 和 INSERT INTO SELECT 表复制语句了。...:Insert into Table2 select  *  from Table1 注意:(1)要求目标表Table2必须存在,并且字段field,field2…也必须存在 (2)注意Table2主键约束...,如果Table2主键而且不为空,则 field1, field2…必须包括主键 (3)注意语法,不要加values,和插入一条数据sql混了,不要写成: Insert into Table2(field1...,field2,…) values (select value1,value2,… from Table1) 由于目标表Table2已经存在,所以我们除了插入源表Table1字段外,还可以插入常量。

    67120

    征集佳句-精妙SQL语句收集

    征集佳句-精妙SQL语句收集SQL语句先前写时候,很容易把一些特殊用法忘记,我特此整理了一下S数据库 征集佳句-精妙SQL语句收集 SQL语句先前写时候...两种情况下,派生表每一行不是来自 TABLE1 就是来自 TABLE2。...B: EXCEPT 运算符 EXCEPT 运算符通过包括所有在 TABLE1 但不在 TABLE2 行并消除所有重复行而派生出一个结果表。...in (‘值1’,’值2’,’值4’,’值6’) 10、说明:两张关联表,删除主表已经在副表没有的信息 delete from table1 where not exists ( select...、说明:前10条记录 select top 10 * form table1 where 范围 15、说明:选择在每一组b值相同数据对应a最大记录所有信息(类似这样用法可以用于论坛每月排行榜

    56740

    sql 子查询(mysql)

    SELECT id FROM table2 LIMIT 1 这一条数据查询结果,这条数据就是返回一个id值,返回单行单列id值,如果这个id等于1,那么就返回table1id等于1那一行数据。...name1和age1所以就是多列了,因为id为主键 ,所以就是一行了 ,如果查询出来 数据 和之前table1name1和age1都没有匹配的话,那么整个子查询查询出来值都将为空。...多行单列子查询: SELECT * FROM table1 WHERE id IN(SELECT id FROM table2 ) 以上sql命令查询table1数据,条件为id必须在 SELECT...id FROM table2 所查询到所有数据其中之一。...,但是条件为,table1name1和age1两个值必须在 SELECT name1,age1 FROM table2 所查询出来数据中有匹配。

    2.9K10

    insert oracle用法,insert into select实际用法,insertselect

    value1,value2,… from Table1 或者:Insert into Table2 select * from Table1 注意:(1)要求目标表Table2必须存在,并且字段field...,field2…也必须存在 (2)注意Table2主键约束,如果Table2主键而且不为空,则 field1, field2…必须包括主键 (3)注意语法,不要加values,和插入一条数据sql...混了,不要写成: Insert into Table2(field1,field2,…) values (select value1,value2,… from Table1) 由于目标表Table2已经存在...,所以我们除了插入源表Table1字段外,还可以插入常量。...示例如下: 业务背景:在部分字段有变化情况下,需要把部分数据复制插入到表里; insert into MARKETING_JUMP_MANAGE (ID,JUMP_CHANNEL,JUMP_CLASS

    1.2K20

    MySQL insert into select和create table区别 已经复制表方法

    value1,value2,... from Table1 注意 (1)要求目标表Table2必须存在,并且字段field,field2…也必须存在 (2)注意Table2主键约束,如果Table2...有主键而且不为空,则 field1, field2…必须包括主键 在执行语句时候,MySQL是逐行加锁(扫描一个锁一个)。...columns1,columns2 from table2; -- 创建一个表结构与table2一模一样表,复制结构同时也复制数据,但是指定新表列名; 后面两种格式,如果后面跟上合适查询条件,可以只复制符合条件数据到新...不能将原表default value也一同迁移过来 3 .区别 首先,最大区别是二者属于不同类型语句,INSERT INTO SELECT 是DML语句(数据操作语言,SQL处理数据等操作统称为数据操纵语言...),完成后需要提交才能生效,CREATE TABLE AS SELECT 是DDL语句(数据定义语言,用于定义和管理 SQL 数据所有对象语言 ),执行完直接生效,不提供回滚,效率比较高。

    2.6K30
    领券