ich habe folgendes Problem und habe nicht einmal den Ansatz einer Lösung....glaube ehrlich gesagt auch nicht, dass es mit MySql lösbar ist.
ich habe eine Tabelle, die wie folgt aussieht:
CREATE TABLE tab (
id int(10) unsigned NOT NULL auto_increment,
show tinyint(3) NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;
mit dem Inhalt
|---id---|---show---|
|---1---|------0-----|
|---2---|------1-----|
|---3---|----- 1-----|
|---4---|------1-----|
|---5---|------0-----|
|---6---|------1-----|
(es sollen nur datensätze, bei denen show=1 ist angezeigt werden!
und dann habe ich drei weitere Tabellen, die alle gleich sind:
CREATE TABLE tab1 (
id int(10) unsigned NOT NULL auto_increment,
tab_id smallint(5) unsigned NOT NULL default '0',
`order` tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (id)
) TYPE=MyISAM;
CREATE TABLE tab2 (
id int(10) unsigned NOT NULL auto_increment,
tab_id smallint(5) unsigned NOT NULL default '0',
`order` tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (id)
) TYPE=MyISAM;
CREATE TABLE tab3 (
id int(10) unsigned NOT NULL auto_increment,
tab_id smallint(5) unsigned NOT NULL default '0',
`order` tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (id)
) TYPE=MyISAM;
mit folgenden Inhalten:
tab1:
|---id---|---tab_id---|----order----|
|---1---|-----2--------|------1-------|
|---2---|-----1--------|------1-------|
tab2:
|---id---|---tab_id---|----order----|
|---1---|-----6--------|------2-------|
|---2---|-----4--------|------2-------|
tab3:
|---id---|---tab_id---|----order----|
|---1---|-----5--------|------3-------|
|---2---|-----3--------|------3-------|
tab_id entspricht dem Feld `id` in der Tabelle tab
meine Frage dazu: Ist es möglich, eine Abfrage zu erstellen, die folgende Daten liefert und nach order sortiert ist (wobei hier eigentlich erst das wahre Problem liegt!)??
tab.id order
2 1
4 2
6 2
3 3
Alle, die ich bis jetzt gefragt habe, sind der Meinung, es ist nicht lösbar (und ich übrigens auch), aber irgendwie habe ich doch noch einen Funken Hoffnung.
Gibt es eine Lösung??
ich habe eine Tabelle, die wie folgt aussieht:
CREATE TABLE tab (
id int(10) unsigned NOT NULL auto_increment,
show tinyint(3) NOT NULL,
PRIMARY KEY (id)
) TYPE=MyISAM;
mit dem Inhalt
|---id---|---show---|
|---1---|------0-----|
|---2---|------1-----|
|---3---|----- 1-----|
|---4---|------1-----|
|---5---|------0-----|
|---6---|------1-----|
(es sollen nur datensätze, bei denen show=1 ist angezeigt werden!
und dann habe ich drei weitere Tabellen, die alle gleich sind:
CREATE TABLE tab1 (
id int(10) unsigned NOT NULL auto_increment,
tab_id smallint(5) unsigned NOT NULL default '0',
`order` tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (id)
) TYPE=MyISAM;
CREATE TABLE tab2 (
id int(10) unsigned NOT NULL auto_increment,
tab_id smallint(5) unsigned NOT NULL default '0',
`order` tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (id)
) TYPE=MyISAM;
CREATE TABLE tab3 (
id int(10) unsigned NOT NULL auto_increment,
tab_id smallint(5) unsigned NOT NULL default '0',
`order` tinyint(3) unsigned NOT NULL default '0',
PRIMARY KEY (id)
) TYPE=MyISAM;
mit folgenden Inhalten:
tab1:
|---id---|---tab_id---|----order----|
|---1---|-----2--------|------1-------|
|---2---|-----1--------|------1-------|
tab2:
|---id---|---tab_id---|----order----|
|---1---|-----6--------|------2-------|
|---2---|-----4--------|------2-------|
tab3:
|---id---|---tab_id---|----order----|
|---1---|-----5--------|------3-------|
|---2---|-----3--------|------3-------|
tab_id entspricht dem Feld `id` in der Tabelle tab
meine Frage dazu: Ist es möglich, eine Abfrage zu erstellen, die folgende Daten liefert und nach order sortiert ist (wobei hier eigentlich erst das wahre Problem liegt!)??
tab.id order
2 1
4 2
6 2
3 3
Alle, die ich bis jetzt gefragt habe, sind der Meinung, es ist nicht lösbar (und ich übrigens auch), aber irgendwie habe ich doch noch einen Funken Hoffnung.
Gibt es eine Lösung??
Kommentar