カテゴリに関連するトピックの組み合わせが一意であるかどうかを判断しようとしています。これは、トピックをカテゴリに追加するときに行われます。一意性は次のクエリでチェックされます。
$sql_unique = "SELECT Categories_CategoryID, list
FROM (
SELECT Categories_CategoryID, GROUP_CONCAT( Topics_TopicID ) AS list
FROM (
SELECT *
FROM Topics_crosstable
ORDER BY Topics_TopicID
)H
GROUP BY Categories_CategoryID
)A
WHERE list = (
SELECT GROUP_concat( TopicID )
FROM Topics
WHERE Name = 'nr1'
OR Name = 'nr2'
ORDER BY Categories_CategoryID ASC )";
$result = mysql_query($sql_unique);
echo mysql_num_rows($result);
if($result > 1)
{
echo' HELP! It is not unique';
}
else
{
echo ' getshere';
}
これは正常に機能します。ただし、問題は、追加されるトピックの数が異なることです。では、クエリのwhereセクションにforループを含める方法はありますか?
for(追加されたトピックの数; nr ++){OR Name ='、$inserted_topicName'}のようなもの