Обычно эта ошибка возникает, когда мы отправляем заголовок после эха или печати. Если эта ошибка возникает на определенной странице, убедитесь, что страница не выполняет эхо-сигналы перед вызовом start_session()
.
Пример непредсказуемой ошибки:
<?php //a white-space before <?php also send for output and arise error
session_start();
session_regenerate_id();
//your page content
Еще один пример:
<?php
includes 'functions.php';
?> <!-- This new line will also arise error -->
<?php
session_start();
session_regenerate_id();
//your page content
Вывод: не выводить символ перед тем, как вызывать функции session_start()
или header()
, даже не с помощью пробела или новой строки
Я бы использовал агрегацию:
select inquiryId
from t
group by inquiryId
having sum(case when status = 'New' then 1 else 0 end) > 0 and
sum(case when status in ('Done', 'Cancelled') then 1 else 0 end) = 0;
Условия в предложении having
подсчитывают количество строк для каждого inquiryId
, отвечающего заданным условиям. > 0
говорит, что inquiryId
имеет хотя бы одну строку. = 0
говорит, что inquiryId
имеет более одной строки.
Пользователь может запросить следующий запрос:
select distinct InquiryId
from <table_name>
where status not in('Done','Cancelled');
Он вернет все все InquiryId
, которые не имеют статуса как Done
или Cancelled
и все еще находятся в промежуточном состоянии .