Avatar billede limemedia Nybegynder
11. august 2000 - 00:24 Der er 4 kommentarer og
1 løsning

Søge Query

VÆR VENLIG AT LÆSE HELE SPM. FØR DU SVARER ! ;D


Jeg har en lille query der ikke helt opfører sig som jeg gerne vil .

$UniqDBID = md5(uniqid(rand()));
mysql_query(\"CREATE TABLE $UniqDBID (ID INT(11), artistname varchar(32))\");
mysql_query(\"INSERT INTO $UniqDBID SELECT ID, artistname FROM test_artist WHERE ((artistname LIKE \'%$query%\')OR(name LIKE \'%$query%\')OR(CV LIKE \'%$query%\')) GROUP BY ID\");
mysql_query(\"INSERT INTO $UniqDBID SELECT test_artist.ID, test_artist.artistname FROM test_artist, test_picture WHERE ((test_picture.AID=test_artist.ID)AND(test_picture.PictureText1 LIKE \'%$query%\')OR(test_picture.PictureText2 LIKE \'%$query%\')OR(test_picture.PictureText3 LIKE \'%$query%\')OR(test_picture.PictureText4 LIKE \'%$query%\')) GROUP BY ID\") or die(mysql_error());
$SearchResult = mysql_query(\"SELECT * from $UniqDBID GROUP BY ID ORDER BY artistname\");
mysql_query(\"DROP TABLE $UniqDBID\");

Det jeg gerne vil er gørst at søge på artistnavn, navn og cv fra test_artist databasen og PictureText1..4 fra test_picture databasen.

Jeg går ud fra at problemet opstår ved at jeg prøver at indsætte (test_picture.AID=test_artist.ID)AND samtidig med at jeg fører OR sætninger af i samme åndedræt. Kan jeg lave en SELECT som substatement på en anden SELECT - jeg synes ikke jeg kan få det til at virke som på SQL Serveren.

Har det interesse, er DB skemaet pastet herunder. Har du et bedre forslag er jeg meget åben ;D

---

CREATE TABLE test_artist (
  ID int(11) DEFAULT \'0\' NOT NULL auto_increment,
  artistname varchar(32) NOT NULL,
  name varchar(32) NOT NULL,
  address varchar(32),
  zip varchar(4),
  city varchar(32),
  email varchar(32),
  age varchar(12),
  phone varchar(8),
  special varchar(254),
  url varchar(64),
  sname enum(\'N\',\'Y\') DEFAULT \'N\' NOT NULL,
  saddress enum(\'N\',\'Y\') DEFAULT \'N\' NOT NULL,
  szip enum(\'N\',\'Y\') DEFAULT \'N\' NOT NULL,
  scity enum(\'N\',\'Y\') DEFAULT \'N\' NOT NULL,
  semail enum(\'N\',\'Y\') DEFAULT \'N\' NOT NULL,
  sage enum(\'N\',\'Y\') DEFAULT \'N\' NOT NULL,
  sphone enum(\'N\',\'Y\') DEFAULT \'N\' NOT NULL,
  surl enum(\'N\',\'Y\') DEFAULT \'N\' NOT NULL,
  password varchar(64) NOT NULL,
  CV text,
  PRIMARY KEY (ID),
  KEY ID (ID),
  UNIQUE ID_2 (ID)
);


CREATE TABLE test_picture (
  ID int(11) DEFAULT \'0\' NOT NULL auto_increment,
  AID int(11) DEFAULT \'0\' NOT NULL,
  CID int(11) DEFAULT \'0\' NOT NULL,
  Picture1 varchar(32) NOT NULL,
  PictureText1 varchar(128),
  Picture2 varchar(32),
  PictureText2 varchar(128),
  Picture3 varchar(32),
  PictureText3 varchar(128),
  Picture4 varchar(32),
  PictureText4 varchar(128),
  PRIMARY KEY (ID),
  KEY ID (ID),
  UNIQUE ID_2 (ID)
);
Avatar billede limemedia Nybegynder
11. august 2000 - 00:34 #1
Erik >> du er for genial... dropper du et svar... 500 points for to parenteser
Avatar billede erikjacobsen Ekspert
11. august 2000 - 00:35 #2
Jeg ser et lille problem...  Du siger 
  ....WHERE (a AND b OR c OR d OR e)    sådan ca.
Mener du ikke
  ...WHERE (a AND (b OR c OR d))  ?
Avatar billede limemedia Nybegynder
11. august 2000 - 00:36 #3
føler sig ikke ret dum... har prøvet netop det med fejl... Er vist ved at blive for gammel...

Men hvis der er nogen her der fortjener points her så.... specielt med dit mål *griner*
Avatar billede erikjacobsen Ekspert
11. august 2000 - 00:52 #4
Og grunden til den sjove rækkefølge på kommentar og svar ovenfor var, at jeg lige fik fat
på ljweb på ICQ og der fandt ud af det.
Avatar billede andreas_admin Nybegynder
11. august 2000 - 08:14 #5
ljweb>> Det var en meget fair afgørelse, og et godt eksempel for andre ;)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Netcompany A/S

Test Consultant

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Netværkstekniker til Forsvarets Cyberdivision i Hvidovre – Er det dig?

AL Sydbank A/S (tidligere Arbejdernes Landsbank)

Teamleder til AL Sydbanks GDPR & Tech Regulation i Aabenraa

KMD A/S

E2E Tester