Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

कॉलम के अनुसार PHP/MySQL समूह परिणाम

जैसे mluebke टिप्पणी की, GROUP का उपयोग करने का अर्थ है कि आपको केवल एक मिलता है प्रत्येक श्रेणी के लिए परिणाम। उदाहरण के तौर पर आपने जो सूची दी है, उसके आधार पर, मुझे लगता है कि आप कुछ इस तरह चाहते हैं:

$sql = "SELECT * FROM products WHERE category IN (10,120,150,500) GROUP BY category ORDER BY category, id";
$res = mysql_query($sql);

$list = array();
while ($r = mysql_fetch_object($res)) {
  $list[$r->category][$r->id]['name'] = $r->name;
  $list[$r->category][$r->id]['whatever'] = $r->whatever;
  // etc
}

और फिर सरणी के माध्यम से लूप करें। उदाहरण:

foreach ($list as $category => $products) {
  echo '<h1>' . $category . '</h1>';

  foreach ($products as $productId => $productInfo) {
    echo 'Product ' . $productId . ': ' . $productInfo['name'];
    // etc
  }

}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक तालिका से सभी रिकॉर्ड प्रदर्शित करना और दूसरे से मिलान रिकॉर्ड प्रदर्शित करना

  2. MySQL EXPLAIN 'टाइप' 'रेंज' से 'रेफरी' में बदल जाता है जब स्टेटमेंट में तारीख बदली जाती है?

  3. प्रति समूह N परिणाम प्राप्त करने के लिए GROUP BY के भीतर LIMIT का उपयोग करना?

  4. विंडोज़ में mysql-python (नए संस्करण) स्थापित नहीं कर सकता

  5. क्या php और mysql का उपयोग करके csv फ़ाइल बनाते समय कोई फ़ाइल आकार सीमा है?