我正在使用PHP& amp; MySQL几年了。有些日子我的查询有问题。请尽可能帮助......
我的情景
我有两张表如下:
TABLE1
| m_id | COL1 | COL2 | COL3 | COL4 | | 1 | 1 | 0 | 0 | 1 | | 2 | 0 | 1 | 0 | 0 |
TABLE2
| m_id | COL1 | COL2 | COL3 | COL4 | | 2 | 1 | 0 | 0 | 0 |
根据我的项目情景,我必须把两个表放在同一列。 m_id 2 是表1中表1的引用。我需要使用以下行查询这些表:
查询结果
| m_id | COL1 | COL2 | COL3 | COL4 | | 2 | 1 | 1 | 0 | 0 |
我需要根据null而不是null值比较两行的结果。我希望我能让你理解它!我把它绑了几天。我得到了一些使用 coalesce()函数的提示。但无法达到预期的结果!!!
答案 0 :(得分:0)
你可以这样做:
SELECT
COALESCE (a.col1, b.`col1`) AS col1,
COALESCE (a.col2, b.`col2`) AS col2,
COALESCE (a.col3, b.`col3`) AS col3,
COALESCE (a.col4, b.`col4`) AS col4
FROM
a
INNER JOIN b
ON (a.id = b.id) ;
答案 1 :(得分:0)
看起来你需要操作" AND"对于列中的值。 如果是这样的话:
SELECT Table1.m_id, (Table1.COL1 AND Table1.COL2) AS COL1 /* ,same for the rest of the columns */ FROM Table1 LEFT JOIN Table2 ON Table1.m_id=Table2.m_id