php - 复杂的sql连接查询

标签 php mysql sql sql-server

我需要合并 2 个表格并显示一个表格。

我已经在 PHP 中完成了它,但我想在 SQL 本身中完成它。

表1:venki

code  subject
10    english
11    tamil
12    history

表2:venki2

num opt1 opt2 opt3 allot 
f41  12    11   10   12

我需要显示一个表格,其中包含num.venki2opt1opt2opt3分配(5 列)。最后 4 列值必须取自表 1,例如: f41 、历史记录。泰米尔语、英语、历史。

最佳答案

SELECT t2.num 
      ,J1.[Subject] AS Opt1
      ,J2.[Subject] AS Opt2
      ,J3.[Subject] AS Opt3
      ,J4.[Subject] AS allot
FROM venki2 t2 LEFT JOIN venki J1
ON t2.opt1 = J1.Code
LEFT JOIN venki J2
ON t2.opt2 = J2.Code
LEFT JOIN venki J3
ON t2.opt3 = J3.Code
LEFT JOIN venki J4
ON t2.allot = J4.Code

在主题周围使用方括号,因为它是 sql server 中的关键字

Working SQL FIDDLE

关于php - 复杂的sql连接查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22417359/

相关文章:

sql - 如何在Powershell脚本传入的SQL脚本中使用变量

内置服务器的 PHP Storm 无法识别 mod_rewrite

php - Laravel Eloquent delete() 不工作

php - 计算最接近盲人友好的颜色?

php - 我的数据库未保存在我的 SQL WAMP 服务器中形成的表中

mysql - 如果另一个子查询中不存在表别名,那么创建它们有什么意义呢?

MySQL 慢查询 ~ 10 秒

mysql - 无法从 jsf Web 应用程序将数据添加到 mysql 数据库

python - 使用Google Colaboratory在GCE上连接到MySQL

php - Jquery 添加值进行选择