Php 获取查询结果,无论行是否包含SELECT字段
下面的查询返回在Php 获取查询结果,无论行是否包含SELECT字段,php,mysql,Php,Mysql,下面的查询返回在bumps表中同时具有loginid和ip2的行 bump表中的所有行都具有ip2,但只有一些行具有loginid 如何让下面的查询为所有行返回ip2,为具有loginid的行返回loginid $sqlStrend = "SELECT e.loginid, e.time, l.username, e.ip2 FROM bumps e JOIN login l ON e.loginid = l.loginid WHERE e.submission
bumps
表中同时具有loginid
和ip2
的行
bump
表中的所有行都具有ip2
,但只有一些行具有loginid
如何让下面的查询为所有行返回ip2
,为具有loginid
的行返回loginid
$sqlStrend = "SELECT e.loginid, e.time, l.username, e.ip2
FROM bumps e
JOIN login l ON e.loginid = l.loginid
WHERE e.submissionid = '$submissionid'
ORDER BY e.time DESC
LIMIT $offset, $rowsperpage";
与
内部联接
(由联接
表示)不同,您只需将其更改为左联接
,该联接返回左侧表上的所有行以及相关表中不存在行的相关行或NULL
SELECT e.loginid, e.time, l.username, e.ip2
FROM bumps e
LEFT JOIN login l ON e.loginid = l.loginid
WHERE e.submissionid = '$submissionid'
ORDER BY e.time DESC
LIMIT $offset, $rowsperpage
查看或中不同的
JOIN
类型。而不是内部JOIN
(由JOIN
表示),您只需将其更改为左JOIN
,它返回左侧表中的所有行以及相关表中不存在行的相关或NULL
SELECT e.loginid, e.time, l.username, e.ip2
FROM bumps e
LEFT JOIN login l ON e.loginid = l.loginid
WHERE e.submissionid = '$submissionid'
ORDER BY e.time DESC
LIMIT $offset, $rowsperpage
查看或中的不同
JOIN
类型。实际上,您已经完成了大部分工作。要从bumps中获取所有行以及现有的登录行,您需要:
$sqlStrend=“选择e.loginid、e.time、l.username、e.ip2
颠簸
在e.loginid=l.loginid上左连接登录名l
其中e.submissionid=“$submissionid”
按e.time DESC订购
限制$offset,$rowsperpage”;
事实上,你已经走到了最前面。要从bumps中获取所有行以及现有的登录行,您需要:
$sqlStrend=“选择e.loginid、e.time、l.username、e.ip2
颠簸
在e.loginid=l.loginid上左连接登录名l
其中e.submissionid=“$submissionid”
按e.time DESC订购
限制$offset,$rowsperpage”;