Если у меня есть 15 строк в одной таблице, и я присоединяюсь к другой таблице, могу ли я все же выводить все 15, даже если я хочу присоединиться, где значение может быть пустым? В принципе, вы можете использовать JOIN + include nulls из результата объединения. Например:SQL JOIN, но включают в себя нули
1
2
3
4
5
6
После присоединиться только 3 имеют присоединиться параметр
2
4
5
Как я могу отобразить все?
Я попробовал следующее:
"SELECT *
FROM `ultrait_wpl_properties`
JOIN ultrait_wpl_property_types
ON ultrait_wpl_properties.property_type = ultrait_wpl_property_types.id
ORDER BY ultrait_wpl_properties.id"
Эта часть выводит дубликата удостоверения личности?
$sql = "SELECT *
FROM `ultrait_wpl_properties`
LEFT JOIN ultrait_wpl_property_types
ON ultrait_wpl_properties.property_type = ultrait_wpl_property_types.id
ORDER BY ultrait_wpl_properties.id ASC";
$result = mysqli_query($con, $sql); // Connect and run query
$dom = new DOMDocument(); // New DOM
$root = $dom->createElement('root'); // Create parent or root node
$dom->appendChild($root); // Append the root tag to the DOM
while($r = mysqli_fetch_assoc($result)){
$node = $textContent = null; // $node will equal $textContent which is null
$property = $dom->createElement('property'); // Create containing node
foreach($r as $column_name => $val) { // Loop through key value pairs
// so loop all the values on each row
Вы хотите использовать так называемое «внешнее соединение». В зависимости от того, какая из таблиц имеет ваши нулевые данные, вы должны использовать либо «left join», либо «right join». –
Вам нужно левое/правое соединение, а не внутреннее соединение. Какая таблица имеет нулевое значение в вашем запросе? – SMA
Возможный дубликат [Как подключиться, включая строку с данными NULL] (http://stackoverflow.com/questions/20106424/how-to-join-including-row-with-null-data) – GolezTrol