User Name Password Register
DaniWeb IT Discussion Community
All
What is DaniWeb IT Discussion Community?
You're currently browsing the Database Design section within the Web Development category of DaniWeb, a massive community of 362,344 software developers, web developers, Internet marketers, and tech gurus who are all enthusiastic about making contacts, networking, and learning from each other. In fact, there are 4,781 IT professionals currently interacting right now! Registration is free, only takes a minute and lets you enjoy all of the interactive features of the site.
Please support our Database Design advertiser:
Views: 936 | Replies: 2
Reply
Join Date: Nov 2007
Posts: 1
Reputation: Subhobroto is an unknown quantity at this point 
Rep Power: 0
Solved Threads: 0
Subhobroto Subhobroto is offline Offline
Newbie Poster

Question Normalizing "tables"

  #1  
Nov 15th, 2007
Guys,

without saying anything much, I have such data at hand (rows from a database table):

111 | xyz | a, b, c

Following someone's wise words, I would love to have this transformed to :

	111 | xyz | a
	111 | xyz | b
	111 | xyz | c

DO NOT assume that there will be ONLY a single cell/column with multiple values.

The following might also arise :

	111 | xyz, def | a, b, c

This has to be transformed to :

	111 | xyz | a
	111 | xyz | b
	111 | xyz | c
	111 | def | a
	111 | def | b
	111 | def | c

C++ code or suggestions would be great.. although I am interested in knowing more about ;

1. Working implementations/snippets
2. Alternative but automated or programmatic approaches to get equivalent output.
3. Links to other resources where I might get more answers to this question.. for example any good database experts forums you guys might know/heard about.. visit etc...

I am really looking forward to some help on this because I thought up a recursive solution to this problem but I got stuck when I found out that I would have to know and predefine the table schema and model an object/class/structure on it.. that would make my program not applicable for any table, but rather I would have to redefine and recompile the classes for the table schema for every table.

I am sure there are easier ways out.
AddThis Social Bookmark Button
Reply With Quote  
Join Date: Aug 2005
Location: Trailer trash caravan park, just down the road from loserville
Posts: 4,549
Reputation: iamthwee is a jewel in the rough iamthwee is a jewel in the rough iamthwee is a jewel in the rough iamthwee is a jewel in the rough 
Rep Power: 15
Solved Threads: 284
iamthwee's Avatar
iamthwee iamthwee is offline Offline
Industrious Poster

Re: Normalizing "tables"

  #2  
Nov 16th, 2007
Yeah it seems like you need some sort of generic way to set up an arbitary number of nested for loops. Perhaps recursion of some sort.

//111 | xyz, def | a, b, c

#include <iostream>
#include <string>

using namespace std;

int main()
{

  string array1[] = "111";
  string array2[] = {"xyz", "def"};
  string array3[] = {"a", "b", "c"};

  for ( int i = 0; i < 1; i++ )
  {
    for ( int j = 0; j < 2; j++ )
    {
      for ( int k = 0; k < 3; k++ )
      {
        cout << array1[i] << " " << array2[j] << " " << array3[k] << endl;
      }
    }
  }
  cin.get();
}

I think hard coding it would be the simplest solution.
Last edited by iamthwee : Nov 16th, 2007 at 7:51 am.
Member of: F-ugly code club

Join today don't delay!
Reply With Quote  
Join Date: Feb 2007
Location: Bangalore,India
Posts: 1,131
Reputation: debasisdas is an unknown quantity at this point 
Rep Power: 4
Solved Threads: 67
debasisdas's Avatar
debasisdas debasisdas is offline Offline
Veteran Poster

Re: Normalizing "tables"

  #3  
Nov 17th, 2007
I don't think this question has anything to do with database designing.
Share your Knowledge.
Reply With Quote  
Reply

Only community members can participate in forum threads. You must register or log in to contribute.

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)

 

DaniWeb Database Design Marketplace
Thread Tools Display Modes

Similar Threads
Other Threads in the Database Design Forum

All times are GMT -4. The time now is 11:14 am.
Forum system based on vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
©2003 - 2008 DaniWeb® LLC