मुझे लगता है कि ऐसा करने का सबसे अच्छा तरीका SQL के बजाय PHP कोड में होगा।
आप इसे केवल PHP में एक सहयोगी सरणी बनाकर प्राप्त कर सकते हैं, "टेक्स्ट" फ़ील्ड को एक कुंजी के रूप में उपयोग करके, जिसमें वह डेटा होता है जो आप चाहते हैं - और जैसे ही आप डेटाबेस से जानकारी खींचते हैं, इसे पॉप्युलेट करते हैं।
एक उदाहरण:
एसक्यूएल:SELECT * FROM myTable
पीएचपी कोड:
<?php
// Connect to MySQL database
$result = mysql_query($sql_query_noted_above);
$stringsInfo = array();
while ($row = mysql_fetch_assoc($result))
{
if (!isset($stringsInfo[$row['text']]))
{
$stringsInfo[$row['text']] = array('types' => array(), 'idAccounts' => array());
}
$stringsInfo[$row['text']]['types'][] = $row['type'];
$stringsInfo[$row['text']]['idAccounts'][] = $row['idAccount'];
}
?>
यह आपको इस प्रकार एक सरणी देगा:
'myTextString' => 'types' => 'type1', 'type2', 'type3'
'idAccounts' => 'account1', 'account2'
'anotherTextString' => 'types' => 'type2', 'type4'
'idAccounts' => 'account2', 'account3'
और इसी तरह।
मुझे आशा है कि यह मददगार है।
संपादित करें:पोस्टर ने प्रदर्शन के लिए मदद मांगी।
<?php
foreach ($stringsInfo as $string => $info)
{
echo $string . '<br />';
echo 'Types: ' . implode(', ', $info['types']); // This will echo each type separated by a comma
echo '<br />';
echo 'ID Accounts: ' . implode(', ', $info['idAccounts']);
}
/* वैकल्पिक रूप से, आप $info में निहित प्रत्येक सरणी को लूप कर सकते हैं यदि आपको अधिक नियंत्रण की आवश्यकता है */
foreach ($stringsInfo as $string => $info)
{
echo $string . '<br />';
echo 'Types: ';
foreach ($info['types'] as $type)
{
echo $type . ' - ';
}
echo '<br />';
echo 'ID Accounts: '
foreach ($info['idAccounts'] as $idAccount)
{
echo $idAccount . ' - ';
}
}