dongpao9165 2016-06-28 19:53
浏览 32
已采纳

如果没有在T2中替换,则mysql从T1中选择

So mysql PDO query I am trying to write must compare columns from two tables and output array.

  1. If empty output data from table1
  2. if cell has value same as table2, output that value as first and then all other values next.

job table:

table1
|jobName|Name|
|job1   |John|
|job2   |John|
|job3   |John|
|jobABC |Jack|
|jobCCC |Jack|
|jobXYZ |Jack|

and day table:

table2
|day |jobName|Name|
|day1|       |John|
|day1|jobCCC |Jack|
|day2|job2   |John|
|day2|       |Jack|
|day3|jobXYZ |Jack|
|day3|job1   |John|

and the output for John should be:

day1, job1, job2, job3
day2, job2, job1, job3
day3, job1, job2, job3

and the output for Jack should be:

day1, jobCCC, jobABC, jobXYZ
day2, jobABC, jobCCC, jobXYZ
day3, jobXYZ, jobABC, jobCCC

Thanks!

  • 写回答

1条回答 默认 最新

  • douxiuar885064 2016-06-28 20:13
    关注

    I got close... anyone care to help me out?

    http://sqlfiddle.com/#!9/e5a510/12

    SELECT 
      b.Day,
      COALESCE(a.Name, b.Name) AS Name, 
      COALESCE(a.JobName, b.JobName) AS JobName
    FROM table1 a, table2 b
    WHERE a.Name = b.Name
    

    Update!

    Here's the final product (I think):

    http://sqlfiddle.com/#!9/e5a510/53

    SELECT 
      b.Day,
      COALESCE(a.Name, b.Name) AS Name, 
      COALESCE(a.JobName, b.JobName) AS JobName
    FROM table1 a, table2 b
    WHERE a.Name = b.Name AND a.Name = 'Jack' 
    ORDER BY   b.Day ASC, a.JobName = b.JobName DESC, a.JobName ASC
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 Python时间序列如何拟合疏系数模型
  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services