Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6894597
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 27, 20262026-05-27T06:48:09+00:00 2026-05-27T06:48:09+00:00

my database table is something like : id year month 1 2011 november 2

  • 0

my database table is something like :

id    year   month 
1     2011   november
2     2011   november
3     2011   october 

i need to create a query so it return something like that :

2011
    november
    november
    october 

What is the correct query syntax to do it in php script ?

Here is the code i used :

<?php

$uid = $_SESSION['uid'];
$sql = "SELECT year, GROUP_CONCAT(month) AS months FROM articles GROUP BY year";
$res = mysql_query ($sql) or die (mysql_error());
if (mysql_num_rows($res) > 0) {
    while ($rows = mysql_fetch_assoc($res)) {
        foreach ($rows AS $row) {
            echo $row['year'] . "<br>";
            $months = explode(",", $row['months']);
            foreach ($months AS $m) {
                echo $m . "<br>";
            }
        }
    }
}
?>
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-27T06:48:10+00:00Added an answer on May 27, 2026 at 6:48 am

    You can use GROUP_CONCAT() to return a comma-separated list of months:

    SELECT year, GROUP_CONCAT(month) AS months GROM tbl GROUP BY year
    
    Returns:
    2011  november,november,october
    

    Or just select both columns and handle the display/presentation in your code:

    SELECT year, month FROM tbl WHERE year = 2011
    
    Returns
    2011   november
    2011   november
    2011   october
    

    In code, loop and only display the year when it changes.

    Update Since a code example seems warranted…

    // Results from above GROUP_CONCAT() query already fetched & stored in `$rowset`:    
    while ($row = mysql_fetch_assoc($res)) {
       $rowset[] = $row;
    }
    
    // Now $rowset is a 2D array containing all rows.
    foreach ($rowset as $row) {
      // Output the year
      echo $row['year'] . "\n";
    
      // months are comma-separated via GROUP_CONCAT()
      // explode them into an array
      $months = explode(",", $row['months']);
      foreach ($months as $m) {
        // Output the months
        echo $m . "\n";
      }
    }
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I need to create a database table to store different changelog/auditing (when something was
I have a database table that stores imported information. For simplicity, its something like:
I got a database table that looks something like this: | id | clock
Well i take from my database table something like: $datetime=2012-01-12 00:00:00 i want to
I have a database table that i want to allow my friends to update.
I have a database table in SQL Server 2005 Express that takes in 2367
If I have the name of a database table like this: string tableName =
Suppose that I have a database table that contains information on cities across the
I need to put something in my database so i can check on students
I am creating a database table that'll have a list of all Tags available

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.