三表左连接查询的sql语句写法
2023-06-13 09:14:02 时间
今天要查询所有realname的username,psw,gname,tel
表结构:
表t1
字段名:t1_id,username,psw
表t2
字段名:t2_id,gname,t1_id//这里一个t1_id对应多个t2_id
t3
字段名:t3_id,realname,tel,t1_id//这里一个t1_id对应一个t3_id
遇到的麻烦是当一个realname在t2表中没有内容时,也要将此realname的username,psw,tel等显示出来,直接使用
sql="selectusername,psw,gname,telfromt1,t2,t3wheret1.t1_id=t2.t1_idandt1.t1_id=t3.t1_id"
得到的结果是:t2表中必须有某个realname的作品,才能查询出来他的信息,这肯定不是想要的结果,最后想到使用左连接,sql语句是:
sql="selectusername,psw,gname,telfrom(t1leftjoint2ont1.t1_id=t2.t1_id)leftjoint3ont1.t1_id=t3.t1_id"
这样就得到想要的结果了。
表结构:
表t1
字段名:t1_id,username,psw
表t2
字段名:t2_id,gname,t1_id//这里一个t1_id对应多个t2_id
t3
字段名:t3_id,realname,tel,t1_id//这里一个t1_id对应一个t3_id
遇到的麻烦是当一个realname在t2表中没有内容时,也要将此realname的username,psw,tel等显示出来,直接使用
sql="selectusername,psw,gname,telfromt1,t2,t3wheret1.t1_id=t2.t1_idandt1.t1_id=t3.t1_id"
得到的结果是:t2表中必须有某个realname的作品,才能查询出来他的信息,这肯定不是想要的结果,最后想到使用左连接,sql语句是:
sql="selectusername,psw,gname,telfrom(t1leftjoint2ont1.t1_id=t2.t1_id)leftjoint3ont1.t1_id=t3.t1_id"
这样就得到想要的结果了。
相关文章
- SQL语句面试题目_sql基础知识面试题
- SQL开发知识:Oracle中sql语句(+)符号代表连接的使用介绍
- SQL多表连接查询(详细实例)详解编程语言
- Oracle分页查询实战: 构建有效的SQL语句(oracle分页sql语句)
- sql性能优化优化Oracle中PL/SQL性能的方法(oracle中pl)
- 测试Oracle SQL:获得更多知识(oracle测试sql)
- Oracle数据库表连接SQL技术指南(oracle表连接sql)
- MySQL 嵌入式 SQL 的特点和应用场景分析(mysql嵌入式sql)
- 玩转Redis:使用它替代SQL查询(redis实现sql查询)
- MySQL数据库的SQL语句执行过程(mysql执行sql)
- 采用SQL正则替换MSSQL——最佳实践详解(sql正则替换mssql)
- 原生SQL实现Oracle数据库的连接查询(oracle的连接查询)
- 接SQL Server左外连接技术:实现多表数据查询功能(sqlserver左外连)
- SQL Server右连接查询技巧(sqlserver右连接)
- SQL Server环境中包使用限制(sqlserver包限制)
- SQL Server内连接实现数据查询的简洁之道(sqlserver内连接)
- sql与数据服务的桥梁:SQLServerSQLServer:连接SQL与数据服务的桥梁(sqlserver 介于)
- MySQL数据库备份还原SQL操作指南(mysql数据还原sql)
- 学习MySQL两表查询,掌握SQL连接操作(mysql两表查询的方法)
- SQL与Redis实现数据的迅速存取(sql与redis)
- Oracle SQL妙用提示优化工作效率(oracle sql提示)
- Oracle SQL中使用别名的优势(oracle sql别名)
- sql连接查询中,where关键字的位置讲解
- sql表连接查询使用方法(sql多表连接查询)
- php使用pdo连接并查询sql数据库的方法