【问题标题】:SQL 3 Table Join with IS NOT NULLSQL 3 表连接与 IS NOT NULL
【发布时间】:2016-07-06 11:53:42
【问题描述】:

我有 3 张桌子 com_cosimclist

$list = "SELECT com_co.*, sim.*, clist.*
         FROM  com_co
            INNER   JOIN sim
              ON sim.id = com_co.component_id
            INNER   JOIN clist
              ON com_co.complex_id = clist.id AND IS NOT NULL
         WHERE comp_c_code = '$rowId'";

如果我删除第二个INNER JOIN,查询就会运行,但我无法从clist 获取数据。表com_co 中的列complex_id 可以是null。如果它是not null 并且有一个值(来自clistid)我希望能够使用IDclist 获取数据。

如果我运行这个查询,我不会得到任何返回的数据。

【问题讨论】:

  • com_co.complex_id = clist.id AND IS NOT NULL 不是有效的 SQL 表达式。
  • 我认为这会起作用 SELECT com_co.*, sim.*, clist.* FROM com_co INNER JOIN sim ON sim.id = com_co.component_id INNER JOIN clist ON com_co.complex_id = clist.id AND com_co.complex_id 不为空,其中 comp_c_code = '$rowId'
  • @astroanu 不幸的是没有

标签: php sql join


【解决方案1】:

试试这个

$list = "SELECT com_co.*, sim.*, clist.*
     FROM  com_co
        INNER   JOIN sim
          ON sim.id = com_co.component_id
        INNER   JOIN clist
          ON com_co.complex_id = clist.id 
     WHERE comp_c_code = '$rowId' AND com_co.complex_id  IS NOT NULL";

【讨论】:

    猜你喜欢
    • 2011-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-04
    相关资源
    最近更新 更多