Днем и ночью я искал синтаксис для подзапросов, и мне все еще кажется, что они в неведении.Кроме того, мне кажется, что мне может потребоваться более сложный подзапрос для завершения этого.Я постараюсь объяснить это в меру своих возможностей.
Мы используем базу данных Access для нашей системы создания билетов (я знаю), и она была построена еще в 1997 году. Она использует SQL Server 2005 для бэкэнда.В настоящее время я пишу скрипт на PHP для электронной почты клиентов, когда их время блокировки, которое они купили заранее, упало ниже нуля.Имея небольшой опыт программирования с SQL и ODBC, я смог создать пару запросов, которые работают на данный момент.Мне нужно добавить больше данных к этим запросам, но я в значительной степени нахожусь на своем пределе.
Этот запрос привлечет всех отдельных клиентов, которые имеют предоплатное время с нами (время блокировки / код события 201)
$query1 = "SELECT [Customer Name], MAX([Incident #])
FROM [Incidents]
WHERE [Event Code] = 201
GROUP BY [Customer Name]
ORDER BY [Customer Name] ASC";
Поскольку у меня ограниченные знания по подзапросам, у меня есть другой запрос, который должен найти, если есть более новый «Инцидент №», у которого «Код события» равен 203. Если это так, не включайте их.
while( odbc_fetch_row( $query1 ))
{
$query2 = "SELECT [Customer Name]
FROM [Incidents]
WHERE [Customer Name] = '$customer_name'
AND [Incident #] > $incident_num
AND [Event Code] = 203";
if( !odbc_fetch_row( $query2 )) {
//list customers
}
}
Эти запросы работают как шарм, но я хотел бы объединить их в один, а также включить столбцы «Дата начала» и «Использованное время» во внешний запрос, чтобы я мог получить доступ к этим данным какхорошо.