order_by.test
上传用户:tsgydb
上传日期:2007-04-14
资源大小:10674k
文件大小:7k
- #
- # Bug with order by
- #
- drop table if exists t1,t2,t3;
- CREATE TABLE t1 (
- id int(6) DEFAULT '0' NOT NULL,
- idservice int(5),
- clee char(20) NOT NULL,
- flag char(1),
- KEY id (id),
- PRIMARY KEY (clee)
- );
- INSERT INTO t1 VALUES (2,4,'6067169d','Y');
- INSERT INTO t1 VALUES (2,5,'606716d1','Y');
- INSERT INTO t1 VALUES (2,1,'606717c1','Y');
- INSERT INTO t1 VALUES (3,1,'6067178d','Y');
- INSERT INTO t1 VALUES (2,6,'60671515','Y');
- INSERT INTO t1 VALUES (2,7,'60671569','Y');
- INSERT INTO t1 VALUES (2,3,'dd','Y');
- CREATE TABLE t2 (
- id int(6) DEFAULT '0' NOT NULL auto_increment,
- description varchar(40) NOT NULL,
- idform varchar(40),
- ordre int(6) unsigned DEFAULT '0' NOT NULL,
- image varchar(60),
- PRIMARY KEY (id),
- KEY id (id,ordre)
- );
- #
- # Dumping data for table 't2'
- #
- INSERT INTO t2 VALUES (1,'Emettre un appel d''offres','en_construction.html',10,'emettre.gif');
- INSERT INTO t2 VALUES (2,'Emettre des soumissions','en_construction.html',20,'emettre.gif');
- INSERT INTO t2 VALUES (7,'Liste des t2','t2_liste_form.phtml',51060,'link.gif');
- INSERT INTO t2 VALUES (8,'Consulter les soumissions','consulter_soumissions.phtml',200,'link.gif');
- INSERT INTO t2 VALUES (9,'Ajouter un type de materiel','typeMateriel_ajoute_form.phtml',51000,'link.gif');
- INSERT INTO t2 VALUES (10,'Lister/modifier un type de materiel','typeMateriel_liste_form.phtml',51010,'link.gif');
- INSERT INTO t2 VALUES (3,'Cr閑r une fiche de client','clients_ajoute_form.phtml',40000,'link.gif');
- INSERT INTO t2 VALUES (4,'Modifier des clients','en_construction.html',40010,'link.gif');
- INSERT INTO t2 VALUES (5,'Effacer des clients','en_construction.html',40020,'link.gif');
- INSERT INTO t2 VALUES (6,'Ajouter un service','t2_ajoute_form.phtml',51050,'link.gif');
- select t1.id,t1.idservice,t2.ordre,t2.description from t1, t2 where t1.id = 2 and t1.idservice = t2.id order by t2.ordre;
-
- drop table t1,t2;
- #
- # Test of ORDER BY on concat() result
- #
- create table t1 (first char(10),last char(10));
- insert into t1 values ("Michael","Widenius");
- insert into t1 values ("Allan","Larsson");
- insert into t1 values ("David","Axmark");
- select concat(first," ",last) as name from t1 order by name;
- select concat(last," ",first) as name from t1 order by name;
- drop table t1;
- #
- # bug in distinct + order by
- #
- create table t1 (i int);
- insert into t1 values(1),(2),(1),(2),(1),(2),(3);
- select distinct i from t1;
- select distinct i from t1 order by rand(5);
- select distinct i from t1 order by i desc;
- select distinct i from t1 order by 1-i;
- select distinct i from t1 order by mod(i,2),i;
- drop table t1;
- #
- # Order by on first index part
- #
- create table t1 (id int not null,col1 int not null,col2 int not null,index(col1));
- insert into t1 values(1,2,2),(2,2,1),(3,1,2),(4,1,1),(5,1,4),(6,2,3),(7,3,1),(8,2,4);
- select * from t1 order by col1,col2;
- select col1 from t1 order by id;
- select col1 as id from t1 order by t1.id;
- select concat(col1) as id from t1 order by t1.id;
- drop table t1;
- #
- # Test of order by on field()
- #
- CREATE TABLE t1 (id int auto_increment primary key,aika varchar(40),aikakentta timestamp);
- insert into t1 (aika) values ('Keskiviikko');
- insert into t1 (aika) values ('Tiistai');
- insert into t1 (aika) values ('Maanantai');
- insert into t1 (aika) values ('Sunnuntai');
- SELECT FIELD(SUBSTRING(t1.aika,1,2),'Ma','Ti','Ke','To','Pe','La','Su') AS test FROM t1 ORDER by test;
- drop table t1;
- #
- # Test of ORDER BY on IF
- #
- CREATE TABLE t1
- (
- a int unsigned NOT NULL,
- b int unsigned NOT NULL,
- c int unsigned NOT NULL,
- UNIQUE(a),
- INDEX(b),
- INDEX(c)
- );
- CREATE TABLE t2
- (
- c int unsigned NOT NULL,
- i int unsigned NOT NULL,
- INDEX(c)
- );
- CREATE TABLE t3
- (
- c int unsigned NOT NULL,
- v varchar(64),
- INDEX(c)
- );
- INSERT INTO t1 VALUES (1,1,1);
- INSERT INTO t1 VALUES (2,1,2);
- INSERT INTO t1 VALUES (3,2,1);
- INSERT INTO t1 VALUES (4,2,2);
- INSERT INTO t2 VALUES (1,50);
- INSERT INTO t2 VALUES (2,25);
- INSERT INTO t3 VALUES (1,'123 Park Place');
- INSERT INTO t3 VALUES (2,'453 Boardwalk');
- SELECT a,b,if(b = 1,i,if(b = 2,v,''))
- FROM t1
- LEFT JOIN t2 USING(c)
- LEFT JOIN t3 ON t3.c = t1.c;
- SELECT a,b,if(b = 1,i,if(b = 2,v,''))
- FROM t1
- LEFT JOIN t2 USING(c)
- LEFT JOIN t3 ON t3.c = t1.c
- ORDER BY a;
- drop table t1,t2,t3;
- #
- # Test of ORDER BY (Bug found by Dean Edmonds)
- #
- create table t1 (ID int not null primary key, TransactionID int not null);
- insert into t1 (ID, TransactionID) values (1, 87), (2, 89), (3, 92), (4, 94), (5, 486), (6, 490), (7, 753), (9, 828), (10, 832), (11, 834), (12, 840);
- create table t2 (ID int not null primary key, GroupID int not null);
- insert into t2 (ID, GroupID) values (87, 87), (89, 89), (92, 92), (94, 94), (486, 486), (490, 490),(753, 753), (828, 828), (832, 832), (834, 834), (840, 840);
- create table t3 (ID int not null primary key, DateOfAction date not null);
- insert into t3 (ID, DateOfAction) values (87, '1999-07-19'), (89, '1999-07-19'), (92, '1999-07-19'), (94, '1999-07-19'), (486, '1999-07-18'), (490, '2000-03-27'), (753, '2000-03-28'), (828, '1999-07-27'), (832, '1999-07-27'),(834, '1999-07-27'), (840, '1999-07-27');
- select t3.DateOfAction, t1.TransactionID from t1 join t2 join t3 where t2.ID = t1.TransactionID and t3.ID = t2.GroupID order by t3.DateOfAction, t1.TransactionID;
- select t3.DateOfAction, t1.TransactionID from t1 join t2 join t3 where t2.ID = t1.TransactionID and t3.ID = t2.GroupID order by t1.TransactionID,t3.DateOfAction;
- drop table t1,t2,t3;
- #bug reported by Wouter de Jong
- drop table if exists members;
- CREATE TABLE members (
- member_id int(11) NOT NULL auto_increment,
- inschrijf_datum varchar(20) NOT NULL default '',
- lastchange_datum varchar(20) NOT NULL default '',
- nickname varchar(20) NOT NULL default '',
- password varchar(8) NOT NULL default '',
- voornaam varchar(30) NOT NULL default '',
- tussenvoegsels varchar(10) NOT NULL default '',
- achternaam varchar(50) NOT NULL default '',
- straat varchar(100) NOT NULL default '',
- postcode varchar(10) NOT NULL default '',
- wijk varchar(40) NOT NULL default '',
- plaats varchar(50) NOT NULL default '',
- telefoon varchar(10) NOT NULL default '',
- geboortedatum date NOT NULL default '0000-00-00',
- geslacht varchar(5) NOT NULL default '',
- email varchar(80) NOT NULL default '',
- uin varchar(15) NOT NULL default '',
- homepage varchar(100) NOT NULL default '',
- internet varchar(15) NOT NULL default '',
- scherk varchar(30) NOT NULL default '',
- favo_boek varchar(50) NOT NULL default '',
- favo_tijdschrift varchar(50) NOT NULL default '',
- favo_tv varchar(50) NOT NULL default '',
- favo_eten varchar(50) NOT NULL default '',
- favo_muziek varchar(30) NOT NULL default '',
- info text NOT NULL,
- ipnr varchar(30) NOT NULL default '',
- PRIMARY KEY (member_id)
- ) TYPE=MyISAM PACK_KEYS=1;
- insert into members (member_id) values (1),(2),(3);
- select member_id, nickname, voornaam FROM members
- ORDER by lastchange_datum DESC LIMIT 2;
- drop table members;