我有一个存储 <select>
的网站许多表中的选项,并根据单个页面提取所有相关选项。目前,我得到这样的查询:SELECT foo FROM foo_tbl;SELECT bar FROM bar_tbl;etc
.这并不是一个严重的问题,但我必须单独迭代每个选择结果。
我想将它们全部提取到一个网格中,然后执行类似的操作
if $row['foo'] != NULL { add to the foo options }
if $row['bar'] != NULL { add to the bar options }
etc
如果我使用类似 SELECT DISTINCT f.foo, b.bar FROM foo_tbl AS f, bar_tbl AS b
的查询,我结束了所有可能的行组合(第一个 foo 第一个栏,第一个 foo 第二个栏,第二个 foo 第一个栏,第二个 foo 第二个栏,等等)。
有没有一种方法可以进行这样的选择,并且在一列中的每个元素只有一次实例,并用空值填充该列中的其余行?
最佳答案
您可以执行以下操作: 假设表 foo 有 a、b、c 列,表 bar 有 d、e、f 列
Select 'isFOO', a, b, c, null, null, null from foo
Union All
Select 'isBAR',null, null, null, d, e, f from bar
关于sql - 在 MySQL 中加入多个不相关的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2197449/