左连接(外连接)sql语句

假设表的结构图为:

user_info表:

role_info表:

要从表user_info和表role_info中查询出某些数据,比如在登录系统时,

除了要以登录名和密码来查询信息外,还要查询额外的信息,比如用户的权限,那就可能用到连接。

这里用左连接:

sql语句如下:

select u.*,r.role_name,r.right_id from (SELECT * FROM user_info WHERE login_name=#login_name#  AND password= #password# )AS u
left outer join role_info r  on u.role=r.role_code
 

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索权限
, 密码
, 数据
, 系统
用户
sql语句左连接、sql左连接查询语句、sql语句中左连接、多表连接查询sql语句、sql连接数据库语句,以便于您获取更多的相关知识。

时间: 2024-09-29 14:32:06

左连接(外连接)sql语句的相关文章

三表左连接查询的sql语句写法_数据库其它

今天要查询所有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="select

php与mysql建立连接并执行SQL语句的代码

今天写了一个小程序,很小很小,只不过是能够建立php与mysql的链接,并且实现简单的SQL语句. 新手初试,还请各路高手多多指导. 程序源代码如下: 复制代码 代码如下: <?php $conn = mysql_connect("localhost","root","") or die ("wrong!"); $sel=mysql_select_db("mydb",$conn); $sql=&quo

php与mysql建立连接并执行SQL语句的代码_php基础

今天写了一个小程序,很小很小,只不过是能够建立php与mysql的链接,并且实现简单的SQL语句. 新手初试,还请各路高手多多指导. 程序源代码如下: 复制代码 代码如下: <?php $conn = mysql_connect("localhost","root","") or die ("wrong!"); $sel=mysql_select_db("mydb",$conn); $sql=&quo

求教sql中,如何外连接2个需要内连接的表

问题描述 如题,假设有三个表A,B,C.A需要外连接B,而B要内连接C,sql语句应如何写.在mysql中我是这样写的:select A.* ,B.* ,C.* from A left outer join B on A.id = B.id inner join C on B.name = C.name where ....但是运行时不会得出预期的结果,恳请各位大大指点. 问题补充:hudingchen 写道 解决方案 你把你要的项目加上就可以阿SELECT A.*,M.* FROM A LEF

.net 4.5 连接外网IP SQL 失败

问题描述 我用vs2012,.netframwork4.5,连接外网SQL服务器IP58.210.XXX.XXX时,出现以下提示.如果改成.netframework3.5就可以正常连接.连接超时时间已到.在尝试使用预登录握手确认时超过了此超时时间.这可能是因为预登录握手失败或服务器未能及时响应.尝试连接到此服务器时花费的持续时间是-[Pre-Login]initialization=1:handshake=15006.是什么问题呀?急..... 解决方案 解决方案二:检查下防火墙.解决方案三:防

MYSQL 左连接右连接和内连接的详解及区别_Mysql

MYSQL 左连接右连接和内连接的区别,这里就对这些概念经过一个实例,讲解清楚. 代码如下: drop table table1; CREATE TABLE `andrew`.`table1` ( `name` VARCHAR(32) NOT NULL, `city` VARCHAR(32) NOT NULL ) ENGINE = MyISAM; insert into TABLE1(name, city) values ('Person A', 'BJ'); insert into TABLE

SQL语句查询服务器不同库的两张表联查

同台服务器不同库的两张表联查 这种方法只限于在同台服务器的数据库. 一.建立两个数据库,库A(表a) 和 库B(表b) . 二.给两个库分配同样的帐号权限. 三.在查询的时候使用下面语句:  代码如下 复制代码 select * from A.dbo.a, B.dbo.b where A.dbo.a.id=B.dbo.b.id   这个sql语句达到的效果就是 库A 和 库B  中,表a 和 表b 中id相等的数据. 以上方法就是一个简单的同服务器不同库的连表查询. 不同服务器不同数据库两张表连

深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接

1.内联接(典型的联接运算,使用像 =  或 <> 之类的比较运算符).包括相等联接和自然联接.     内联接使用比较运算符根据每个表共有的列的值匹配两个表中的行.例如,检索 students和courses表中学生标识号相同的所有行.       2.外联接.外联接可以是左向外联接.右向外联接或完整外部联接.     在 FROM子句中指定外联接时,可以由下列几组关键字中的一组指定:     1)LEFT  JOIN或LEFT OUTER JOIN     左向外联接的结果集包括  LEF

SQL语句的并集UNION 交集JOIN(内连接,外连接)等介绍_MsSql

1. a. 并集UNION SELECT column1, column2 FROM table1 UNION SELECT column1, column2 FROM table2 b. 交集JOIN SELECT * FROM table1 AS a JOIN table2 b ON a.name=b.name c. 差集NOT IN SELECT * FROM table1 WHERE name NOT IN(SELECT name FROM table2) d. 笛卡尔积 SELECT