我对SQL查询有点新意,所以这可能很容易修复,但我似乎找不到任何答案。
我有一堆相关的表格。例如。 SPClients包含iClientID和sName,SPDocTypes包含iDocTypeID和sName,SPCreditor包含iCreditorID和sName
然后
SPDocIndex包含iIndexID,然后是上面列出的iClientID,iDocTypeID和iCreditorID的外键。
如果我做了一个简单的SELECT * FROM SPDocIndex我得到了所有结果,只显示了ID,这在绑定到数据网格时没什么用处。所以我使用内连接,因此显示的是实际名称,而不仅仅是它们的ID,如下所示:
SELECT * FROM SPDocIndex
INNER JOIN SPClients ON SPDocIndex.iClientID=SPClients.iClientID
INNER JOIN SPDocType ON SPDocIndex.iDocTypeID=SPDocType.iDocTypeID
INNER JOIN SPCreditor ON SPDocIndex.iCreditorID=SPCreditor.iCreditorID
查询“有效”但它只返回在所有三列中都有数据的行。如果SPDocIndex的iCreditorID列为null,则不返回该行...但我希望返回所有行,而不管列是否为空。
答案 0 :(得分:1)
Benny - 其他一些人在评论中回复说,您需要将您的加入调整为左加入,而不是内部加入;的确,这就是这种情况。请查看此链接,以获得有关SQL连接之间差异的快速教程 https://www.w3schools.com/sql/sql_join.asp
答案 1 :(得分:0)
const f = e => e.preventDefault()
document.addEventListener('click', f, false)