MySQLベース5:サブクエリとリンク

171099 ワード

本記事の参考:http://www.imooc.com/learn/122 まずデータをダウンロードして、URLの上にあります。
#      :
CREATE TABLE IF NOT EXISTS tdb_goods(
 goods_id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
 goods_name VARCHAR(150) NOT NULL,
 goods_cate VARCHAR(40) NOT NULL,
 brand_name VARCHAR(40) NOT NULL,
 goods_price DECIMAL(15,3) UNSIGNED NOT NULL DEFAULT 0,
 is_show BOOLEAN NOT NULL DEFAULT 1,
 is_saleoff BOOLEAN NOT NULL DEFAULT 0
  );

INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('R510VC 15.6     ','   ','  ','3399',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('Y400N 14.0       ','   ','  ','4899',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('G150TH 15.6     ','   ','  ','8499',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('X550CC 15.6     ','   ','  ','2799',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('X240(20ALA0EYCD) 12.5     ','   ','  ','4999',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('U330P 13.3     ','   ','  ','4299',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('SVP13226SCB 13.3       ','   ','  ','7999',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('iPad mini MD531CH/A 7.9      ','    ','  ','1998',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('iPad Air MD788CH/A 9.7       (16G WiFi )','    ','  ','3388',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES(' iPad mini ME279CH/A    Retina     7.9       (16G WiFi )','    ','  ','2788',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('IdeaCentre C340 20       ','   ','  ','3499',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('Vostro 3800-R1206     ','   ','  ','2899',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('iMac ME086CH/A 21.5      ','   ','  ','9188',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )','   ','  ','3699',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('Z220SFF F4F06PA   ','   /   ','  ','4288',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('PowerEdge T110 II   ','   /   ','  ','5388',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('Mac Pro MD878CH/A        ','   /   ','  ','28888',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES(' HMZ-T3W       ','     ','  ','6999',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('      ','     ','  ','99',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('X3250 M4       2583i14','   /   ','IBM','6888',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('            ','     ','    ','',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES(' HMZ-T3W       ','     ','  ','6999',DEFAULT,DEFAULT);

 INSERT tdb_goods (goods_name,goods_cate,brand_name,goods_price,is_show,is_saleoff) VALUES('      ','     ','  ','99',DEFAULT,DEFAULT);
#     ;
mysql>
mysql> SHOW TABLES;
+-----------------+
| Tables_in_world |
+-----------------+
| city            |
| country         |
| countrylanguage |
| provinces       |
| tdb_goods       |
| test            |
| users           |
+-----------------+
7 rows in set (0.00 sec)

mysql> SHOW COLUMNS FROM tdb_goods;
+-------------+------------------------+------+-----+---------+----------------+
| Field       | Type                   | Null | Key | Default | Extra          |
+-------------+------------------------+------+-----+---------+----------------+
| goods_id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| goods_name  | varchar(150)           | NO   |     | NULL    |                |
| goods_cate  | varchar(40)            | NO   |     | NULL    |                |
| brand_name  | varchar(40)            | NO   |     | NULL    |                |
| goods_price | decimal(15,3) unsigned | NO   |     | 0.000   |                |
| is_show     | tinyint(1)             | NO   |     | 1       |                |
| is_saleoff  | tinyint(1)             | NO   |     | 0       |                |
+-------------+------------------------+------+-----+---------+----------------+
7 rows in set (0.01 sec)

mysql> SELECT * FROM tdb_goods\G;
*************************** 1. row ***************************
   goods_id: 1
 goods_name: R510VC 15.6     
 goods_cate:    
 brand_name:   
goods_price: 3399.000
 is_show: 1
 is_saleoff: 0
*************************** 2. row ***************************
   goods_id: 2
 goods_name: Y400N 14.0       
 goods_cate:    
 brand_name:   
goods_price: 4899.000
 is_show: 1
 is_saleoff: 0
*************************** 3. row ***************************
   goods_id: 3
 goods_name: G150TH 15.6     
 goods_cate:    
 brand_name:   
goods_price: 8499.000
 is_show: 1
 is_saleoff: 0
*************************** 4. row ***************************
   goods_id: 4
 goods_name: X550CC 15.6     
 goods_cate:    
 brand_name:   
goods_price: 2799.000
 is_show: 1
 is_saleoff: 0
*************************** 5. row ***************************
   goods_id: 5
 goods_name: X240(20ALA0EYCD) 12.5     
 goods_cate:    
 brand_name:   
goods_price: 4999.000
 is_show: 1
 is_saleoff: 0
*************************** 6. row ***************************
   goods_id: 6
 goods_name: U330P 13.3     
 goods_cate:    
 brand_name:   
goods_price: 4299.000
 is_show: 1
 is_saleoff: 0
*************************** 7. row ***************************
   goods_id: 7
 goods_name: SVP13226SCB 13.3       
 goods_cate:    
 brand_name:   
goods_price: 7999.000
 is_show: 1
 is_saleoff: 0
*************************** 8. row ***************************
   goods_id: 8
 goods_name: iPad mini MD531CH/A 7.9      
 goods_cate:     
 brand_name:   
goods_price: 1998.000
 is_show: 1
 is_saleoff: 0
*************************** 9. row ***************************
   goods_id: 9
 goods_name: iPad Air MD788CH/A 9.7       (16G WiFi )
 goods_cate:     
 brand_name:   
goods_price: 3388.000
 is_show: 1
 is_saleoff: 0
*************************** 10. row ***************************
   goods_id: 10
 goods_name:  iPad mini ME279CH/A    Retina     7.9       (16G WiFi )
 goods_cate:     
 brand_name:   
goods_price: 2788.000
 is_show: 1
 is_saleoff: 0
*************************** 11. row ***************************
   goods_id: 11
 goods_name: IdeaCentre C340 20      
 goods_cate:    
 brand_name:   
goods_price: 3499.000
 is_show: 1
 is_saleoff: 0
*************************** 12. row ***************************
   goods_id: 12
 goods_name: Vostro 3800-R1206     
 goods_cate:    
 brand_name:   
goods_price: 2899.000
 is_show: 1
 is_saleoff: 0
*************************** 13. row ***************************
   goods_id: 13
 goods_name: iMac ME086CH/A 21.5      
 goods_cate:    
 brand_name:   
goods_price: 9188.000
 is_show: 1
 is_saleoff: 0
*************************** 14. row ***************************
   goods_id: 14
 goods_name: AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )
 goods_cate:    
 brand_name:   
goods_price: 3699.000
 is_show: 1
 is_saleoff: 0
*************************** 15. row ***************************
   goods_id: 15
 goods_name: Z220SFF F4F06PA   
 goods_cate:    /   
 brand_name:   
goods_price: 4288.000
 is_show: 1
 is_saleoff: 0
*************************** 16. row ***************************
   goods_id: 16
 goods_name: PowerEdge T110 II   
 goods_cate:    /   
 brand_name:   
goods_price: 5388.000
 is_show: 1
 is_saleoff: 0
*************************** 17. row ***************************
   goods_id: 17
 goods_name: Mac Pro MD878CH/A        
 goods_cate:    /   
 brand_name:   
goods_price: 28888.000
 is_show: 1
 is_saleoff: 0
*************************** 18. row ***************************
   goods_id: 18
 goods_name:  HMZ-T3W       
 goods_cate:      
 brand_name:   
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 19. row ***************************
   goods_id: 19
 goods_name:       
 goods_cate:      
 brand_name:   
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
*************************** 20. row ***************************
   goods_id: 20
 goods_name: X3250 M4       2583i14
 goods_cate:    /   
 brand_name: IBM
goods_price: 6888.000
 is_show: 1
 is_saleoff: 0
*************************** 21. row ***************************
   goods_id: 21
 goods_name:  HMZ-T3W       
 goods_cate:      
 brand_name:   
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 22. row ***************************
   goods_id: 22
 goods_name:       
 goods_cate:      
 brand_name:   
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
22 rows in set (0.01 sec)

ERROR:
No query specified

サブクエリの本文
mysql> #   
mysql> #              ;
mysql>
mysql> #           ;
mysql> #      ;
mysql> SELECT AVG(goods_price) FROM tdb_goods;

mysql> SELECT AVG(goods_price) FROM tdb_goods;
+------------------+
| AVG(goods_price) |
+------------------+
|     5636.3636364 |
+------------------+
1 row in set (0.03 sec)

mysql> #    
mysql> #         ;             mysql> SELECT ROUND(AVG(goods_price),2) FROM tdb_goods;
+---------------------------+
| ROUND(AVG(goods_price),2) |
+---------------------------+
|                   5636.36 |
+---------------------------+
1 row in set (0.02 sec)

mysql> SELECT goods_id,goods_price FROM tdb_goods WHERE goods_price>=5636.36;
+----------+-------------+
| goods_id | goods_price |
+----------+-------------+
|        3 |    8499.000 |
|        7 |    7999.000 |
|       13 |    9188.000 |
|       17 |   28888.000 |
|       18 |    6999.000 |
|       20 |    6888.000 |
|       21 |    6999.000 |
+----------+-------------+
7 rows in set (0.00 sec)

mysql> #         ;
mysql> SELECT goods_id,goods_price FROM tdb_goods WHERE goods_price>=(SELECT ROUND(AVG(goods_price),2) FROM tdb_goods);
+----------+-------------+
| goods_id | goods_price |
+----------+-------------+
|        3 |    8499.000 |
|        7 |    7999.000 |
|       13 |    9188.000 |
|       17 |   28888.000 |
|       18 |    6999.000 |
|       20 |    6888.000 |
|       21 |    6999.000 |
+----------+-------------+
7 rows in set (0.03 sec)

mysql> SELECT goods_price FROM tdb_goods WHERE goods_cate='   ';
+-------------+
| goods_price |
+-------------+
|    4999.000 |
|    4299.000 |
|    7999.000 |
+-------------+
3 rows in set (0.00 sec)

mysql> SELECT * FROM tdb_goods WHERE goods_cate='   '\G;
*************************** 1. row ***************************
   goods_id: 5
 goods_name: X240(20ALA0EYCD) 12.5     
 goods_cate:    
 brand_name:   
goods_price: 4999.000
 is_show: 1
 is_saleoff: 0
*************************** 2. row ***************************
   goods_id: 6
 goods_name: U330P 13.3     
 goods_cate:    
 brand_name:   
goods_price: 4299.000
 is_show: 1
 is_saleoff: 0
*************************** 3. row ***************************
   goods_id: 7
 goods_name: SVP13226SCB 13.3       
 goods_cate:    
 brand_name:   
goods_price: 7999.000
 is_show: 1
 is_saleoff: 0
3 rows in set (0.00 sec)

ERROR:
No query specified

mysql> SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price>(SELECT goods_price FROM tdb_goods WHERE goods_cate='   ');
ERROR 1242 (21000): Subquery returns more than 1 row
mysql> #      ,           
mysql> SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price>ANY(SELECT goods_price FROM tdb_goods WHERE goods_cate='   ');
+----------+----------------------------------+-------------+
| goods_id | goods_name                       | goods_price |
+----------+----------------------------------+-------------+
|        2 | Y400N 14.0                |    4899.000 |
|        3 | G150TH 15.6                 |    8499.000 |
|        5 | X240(20ALA0EYCD) 12.5       |    4999.000 |
|        7 | SVP13226SCB 13.3          |    7999.000 |
|       13 | iMac ME086CH/A 21.5        |    9188.000 |
|       16 | PowerEdge T110 II             |    5388.000 |
|       17 | Mac Pro MD878CH/A         |   28888.000 |
|       18 |  HMZ-T3W                   |    6999.000 |
|       20 | X3250 M4       2583i14     |    6888.000 |
|       21 |  HMZ-T3W                   |    6999.000 |
+----------+----------------------------------+-------------+
10 rows in set (0.00 sec)

mysql> SELECT goods_id,goods_name,goods_price FROM tdb_goods WHERE goods_price>ALL(SELECT goods_price FROM tdb_goods WHERE goodscate='   ');
+----------+----------------------------------+-------------+
| goods_id | goods_name                       | goods_price |
+----------+----------------------------------+-------------+
|        3 | G150TH 15.6                 |    8499.000 |
|       13 | iMac ME086CH/A 21.5        |    9188.000 |
|       17 | Mac Pro MD878CH/A         |   28888.000 |
+----------+----------------------------------+-------------+
3 rows in set (0.01 sec)

mysql>  #   in  not in       ;
mysql> #EXIST  not EXIST       

mysql>  #         :
mysql> CREATE TABLE IF NOT EXISTS tdb_goods_cate(
 -> cate_id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
 -> cate_name VARCHAR(40) NOT NULL
 -> );
Query OK, 0 rows affected (0.18 sec)

mysql> #      ;
mysql> SELECT goods_cate FROM tdb_goods GROUP BY goods_cate;
+---------------+
| goods_cate    |
+---------------+
|            |
|           |
|    /    |
|            |
|            |
|          |
|            |
+---------------+
7 rows in set (0.00 sec)

mysql> #             、
mysql> SELECT * FROM tdb_goods_cate;
Empty set (0.00 sec)

mysql> DESC tdb_goods_cate;
+-----------+----------------------+------+-----+---------+----------------+
| Field     | Type                 | Null | Key | Default | Extra          |
+-----------+----------------------+------+-----+---------+----------------+
| cate_id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| cate_name | varchar(40)          | NO   |     | NULL    |                |
+-----------+----------------------+------+-----+---------+----------------+
2 rows in set (0.01 sec)

mysql> INSERT tdb_goods_cate(cate_name) SELECT goods_cate FROM tdb_goods GROUP BY goods_cate;
Query OK, 7 rows affected (0.04 sec)
Records: 7  Duplicates: 0  Warnings: 0

mysql> SELECT * FROM tdb_goods_cate;
+---------+---------------+
| cate_id | cate_name     |
+---------+---------------+
|       1 |            |
|       2 |           |
|       3 |    /    |
|       4 |            |
|       5 |            |
|       6 |          |
|       7 |            |
+---------+---------------+
7 rows in set (0.00 sec)

mysql> #          、
mysql> UPDATE tdb_goods INNER JOIN tdb_goods_cate ON goods_cate=cate_name SET goods_cate=cate_id;
Query OK, 22 rows affected (0.21 sec)
Rows matched: 22  Changed: 22  Warnings: 0

mysql> SELECT * FROM tdb_goods\G;
*************************** 1. row ***************************
   goods_id: 1
 goods_name: R510VC 15.6     
 goods_cate: 5
 brand_name:   
goods_price: 3399.000
 is_show: 1
 is_saleoff: 0
*************************** 2. row ***************************
   goods_id: 2
 goods_name: Y400N 14.0       
 goods_cate: 5
 brand_name:   
goods_price: 4899.000
 is_show: 1
 is_saleoff: 0
*************************** 3. row ***************************
   goods_id: 3
 goods_name: G150TH 15.6     
 goods_cate: 4
 brand_name:   
goods_price: 8499.000
 is_show: 1
 is_saleoff: 0
*************************** 4. row ***************************
   goods_id: 4
 goods_name: X550CC 15.6     
 goods_cate: 5
 brand_name:   
goods_price: 2799.000
 is_show: 1
 is_saleoff: 0
*************************** 5. row ***************************
   goods_id: 5
 goods_name: X240(20ALA0EYCD) 12.5     
 goods_cate: 7
 brand_name:   
goods_price: 4999.000
 is_show: 1
 is_saleoff: 0
*************************** 6. row ***************************
   goods_id: 6
 goods_name: U330P 13.3     
 goods_cate: 7
 brand_name:   
goods_price: 4299.000
 is_show: 1
 is_saleoff: 0
*************************** 7. row ***************************
   goods_id: 7
 goods_name: SVP13226SCB 13.3       
 goods_cate: 7
 brand_name:   
goods_price: 7999.000
 is_show: 1
 is_saleoff: 0
*************************** 8. row ***************************
   goods_id: 8
 goods_name: iPad mini MD531CH/A 7.9      
 goods_cate: 2
 brand_name:   
goods_price: 1998.000
 is_show: 1
 is_saleoff: 0
*************************** 9. row ***************************
   goods_id: 9
 goods_name: iPad Air MD788CH/A 9.7       (16G WiFi )
 goods_cate: 2
 brand_name:   
goods_price: 3388.000
 is_show: 1
 is_saleoff: 0
*************************** 10. row ***************************
   goods_id: 10
 goods_name:  iPad mini ME279CH/A    Retina     7.9       (16G WiFi )
 goods_cate: 2
 brand_name:   
goods_price: 2788.000
 is_show: 1
 is_saleoff: 0
*************************** 11. row ***************************
   goods_id: 11
 goods_name: IdeaCentre C340 20      
 goods_cate: 1
 brand_name:   
goods_price: 3499.000
 is_show: 1
 is_saleoff: 0
*************************** 12. row ***************************
   goods_id: 12
 goods_name: Vostro 3800-R1206     
 goods_cate: 1
 brand_name:   
goods_price: 2899.000
 is_show: 1
 is_saleoff: 0
*************************** 13. row ***************************
   goods_id: 13
 goods_name: iMac ME086CH/A 21.5      
 goods_cate: 1
 brand_name:   
goods_price: 9188.000
 is_show: 1
 is_saleoff: 0
*************************** 14. row ***************************
   goods_id: 14
 goods_name: AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )
 goods_cate: 1
 brand_name:   
goods_price: 3699.000
 is_show: 1
 is_saleoff: 0
*************************** 15. row ***************************
   goods_id: 15
 goods_name: Z220SFF F4F06PA   
 goods_cate: 3
 brand_name:   
goods_price: 4288.000
 is_show: 1
 is_saleoff: 0
*************************** 16. row ***************************
   goods_id: 16
 goods_name: PowerEdge T110 II   
 goods_cate: 3
 brand_name:   
goods_price: 5388.000
 is_show: 1
 is_saleoff: 0
*************************** 17. row ***************************
   goods_id: 17
 goods_name: Mac Pro MD878CH/A        
 goods_cate: 3
 brand_name:   
goods_price: 28888.000
 is_show: 1
 is_saleoff: 0
*************************** 18. row ***************************
   goods_id: 18
 goods_name:  HMZ-T3W       
 goods_cate: 6
 brand_name:   
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 19. row ***************************
   goods_id: 19
 goods_name:       
 goods_cate: 6
 brand_name:   
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
*************************** 20. row ***************************
   goods_id: 20
 goods_name: X3250 M4       2583i14
 goods_cate: 3
 brand_name: IBM
goods_price: 6888.000
 is_show: 1
 is_saleoff: 0
*************************** 21. row ***************************
   goods_id: 21
 goods_name:  HMZ-T3W       
 goods_cate: 6
 brand_name:   
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 22. row ***************************
   goods_id: 22
 goods_name:       
 goods_cate: 6
 brand_name:   
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
22 rows in set (0.00 sec)

ERROR:
No query specified

mysql> SELECT * FROM tdb_goods_brands;
+----------+------------+
| brand_id | brand_name |
+----------+------------+
|        1 | IBM        |
|        2 |          |
|        3 |          |
|        4 |          |
|        5 |          |
|        6 |          |
|        7 |          |
|        8 |          |
|        9 |          |
+----------+------------+
9 rows in set (0.00 sec)

mysql> SHOW COLUMNS FROM tdb_goods;
+-------------+------------------------+------+-----+---------+----------------+
| Field       | Type                   | Null | Key | Default | Extra          |
+-------------+------------------------+------+-----+---------+----------------+
| goods_id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| goods_name  | varchar(150)           | NO   |     | NULL    |                |
| goods_cate  | varchar(40)            | NO   |     | NULL    |                |
| brand_name  | varchar(40)            | NO   |     | NULL    |                |
| goods_price | decimal(15,3) unsigned | NO   |     | 0.000   |                |
| is_show     | tinyint(1)             | NO   |     | 1       |                |
| is_saleoff  | tinyint(1)             | NO   |     | 0       |                |
+-------------+------------------------+------+-----+---------+----------------+
7 rows in set (0.03 sec)

mysql> SHOW COLUMNS FROM tdb_goods_brands;
+------------+----------------------+------+-----+---------+----------------+
| Field      | Type                 | Null | Key | Default | Extra          |
+------------+----------------------+------+-----+---------+----------------+
| brand_id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| brand_name | varchar(40)          | NO   |     | NULL    |                |
+------------+----------------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)

mysql> UPDATE tdb_goods AS g INNER JOIN tdb_goods_brands AS b ON g.brand_name=b.brand_name
 -> SET g.brand_name=b.brand_id;
Query OK, 22 rows affected (0.06 sec)
Rows matched: 22  Changed: 22  Warnings: 0

mysql> SELECT * FROM tdb_goods\G;
*************************** 1. row ***************************
   goods_id: 1
 goods_name: R510VC 15.6     
 goods_cate: 5
 brand_name: 2
goods_price: 3399.000
 is_show: 1
 is_saleoff: 0
*************************** 2. row ***************************
   goods_id: 2
 goods_name: Y400N 14.0       
 goods_cate: 5
 brand_name: 7
goods_price: 4899.000
 is_show: 1
 is_saleoff: 0
*************************** 3. row ***************************
   goods_id: 3
 goods_name: G150TH 15.6     
 goods_cate: 4
 brand_name: 9
goods_price: 8499.000
 is_show: 1
 is_saleoff: 0
*************************** 4. row ***************************
   goods_id: 4
 goods_name: X550CC 15.6     
 goods_cate: 5
 brand_name: 2
goods_price: 2799.000
 is_show: 1
 is_saleoff: 0
*************************** 5. row ***************************
   goods_id: 5
 goods_name: X240(20ALA0EYCD) 12.5     
 goods_cate: 7
 brand_name: 7
goods_price: 4999.000
 is_show: 1
 is_saleoff: 0
*************************** 6. row ***************************
   goods_id: 6
 goods_name: U330P 13.3     
 goods_cate: 7
 brand_name: 7
goods_price: 4299.000
 is_show: 1
 is_saleoff: 0
*************************** 7. row ***************************
   goods_id: 7
 goods_name: SVP13226SCB 13.3       
 goods_cate: 7
 brand_name: 6
goods_price: 7999.000
 is_show: 1
 is_saleoff: 0
*************************** 8. row ***************************
   goods_id: 8
 goods_name: iPad mini MD531CH/A 7.9      
 goods_cate: 2
 brand_name: 8
goods_price: 1998.000
 is_show: 1
 is_saleoff: 0
*************************** 9. row ***************************
   goods_id: 9
 goods_name: iPad Air MD788CH/A 9.7       (16G WiFi )
 goods_cate: 2
 brand_name: 8
goods_price: 3388.000
 is_show: 1
 is_saleoff: 0
*************************** 10. row ***************************
   goods_id: 10
 goods_name:  iPad mini ME279CH/A    Retina     7.9       (16G WiFi )
 goods_cate: 2
 brand_name: 8
goods_price: 2788.000
 is_show: 1
 is_saleoff: 0
*************************** 11. row ***************************
   goods_id: 11
 goods_name: IdeaCentre C340 20      
 goods_cate: 1
 brand_name: 7
goods_price: 3499.000
 is_show: 1
 is_saleoff: 0
*************************** 12. row ***************************
   goods_id: 12
 goods_name: Vostro 3800-R1206     
 goods_cate: 1
 brand_name: 5
goods_price: 2899.000
 is_show: 1
 is_saleoff: 0
*************************** 13. row ***************************
   goods_id: 13
 goods_name: iMac ME086CH/A 21.5      
 goods_cate: 1
 brand_name: 8
goods_price: 9188.000
 is_show: 1
 is_saleoff: 0
*************************** 14. row ***************************
   goods_id: 14
 goods_name: AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )
 goods_cate: 1
 brand_name: 3
goods_price: 3699.000
 is_show: 1
 is_saleoff: 0
*************************** 15. row ***************************
   goods_id: 15
 goods_name: Z220SFF F4F06PA   
 goods_cate: 3
 brand_name: 4
goods_price: 4288.000
 is_show: 1
 is_saleoff: 0
*************************** 16. row ***************************
   goods_id: 16
 goods_name: PowerEdge T110 II   
 goods_cate: 3
 brand_name: 5
goods_price: 5388.000
 is_show: 1
 is_saleoff: 0
*************************** 17. row ***************************
   goods_id: 17
 goods_name: Mac Pro MD878CH/A        
 goods_cate: 3
 brand_name: 8
goods_price: 28888.000
 is_show: 1
 is_saleoff: 0
*************************** 18. row ***************************
   goods_id: 18
 goods_name:  HMZ-T3W       
 goods_cate: 6
 brand_name: 6
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 19. row ***************************
   goods_id: 19
 goods_name:       
 goods_cate: 6
 brand_name: 6
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
*************************** 20. row ***************************
   goods_id: 20
 goods_name: X3250 M4       2583i14
 goods_cate: 3
 brand_name: 1
goods_price: 6888.000
 is_show: 1
 is_saleoff: 0
*************************** 21. row ***************************
   goods_id: 21
 goods_name:  HMZ-T3W       
 goods_cate: 6
 brand_name: 6
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 22. row ***************************
   goods_id: 22
 goods_name:       
 goods_cate: 6
 brand_name: 6
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
22 rows in set (0.00 sec)

ERROR:
No query specified

mysql> SHOW COLUMNS FROM tdb_goods;
+-------------+------------------------+------+-----+---------+----------------+
| Field       | Type                   | Null | Key | Default | Extra          |
+-------------+------------------------+------+-----+---------+----------------+
| goods_id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| goods_name  | varchar(150)           | NO   |     | NULL    |                |
| goods_cate  | varchar(40)            | NO   |     | NULL    |                |
| brand_name  | varchar(40)            | NO   |     | NULL    |                |
| goods_price | decimal(15,3) unsigned | NO   |     | 0.000   |                |
| is_show     | tinyint(1)             | NO   |     | 1       |                |
| is_saleoff  | tinyint(1)             | NO   |     | 0       |                |
+-------------+------------------------+------+-----+---------+----------------+
7 rows in set (0.00 sec)

mysql> ALTER TABLE tdb_goods
 -> CHANGE goods_cate cate_id SMALLINT UNSIGNED NOT NULL,
 -> CHANGE brand_name brand_id SMALLINT UNSIGNED NOT NULL;
Query OK, 22 rows affected (0.67 sec)
Records: 22  Duplicates: 0  Warnings: 0

mysql> SHOW COLUMNS FROM tdb_goods;
+-------------+------------------------+------+-----+---------+----------------+
| Field       | Type                   | Null | Key | Default | Extra          |
+-------------+------------------------+------+-----+---------+----------------+
| goods_id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| goods_name  | varchar(150)           | NO   |     | NULL    |                |
| cate_id     | smallint(5) unsigned   | NO   |     | NULL    |                |
| brand_id    | smallint(5) unsigned   | NO   |     | NULL    |                |
| goods_price | decimal(15,3) unsigned | NO   |     | 0.000   |                |
| is_show     | tinyint(1)             | NO   |     | 1       |                |
| is_saleoff  | tinyint(1)             | NO   |     | 0       |                |
+-------------+------------------------+------+-----+---------+----------------+
7 rows in set (0.00 sec)

mysql> #         ;
mysql> SELECT * FROM tdb_goods\G;
*************************** 1. row ***************************
   goods_id: 1
 goods_name: R510VC 15.6     
 cate_id: 5
   brand_id: 2
goods_price: 3399.000
 is_show: 1
 is_saleoff: 0
*************************** 2. row ***************************
   goods_id: 2
 goods_name: Y400N 14.0       
 cate_id: 5
   brand_id: 7
goods_price: 4899.000
 is_show: 1
 is_saleoff: 0
*************************** 3. row ***************************
   goods_id: 3
 goods_name: G150TH 15.6     
 cate_id: 4
   brand_id: 9
goods_price: 8499.000
 is_show: 1
 is_saleoff: 0
*************************** 4. row ***************************
   goods_id: 4
 goods_name: X550CC 15.6     
 cate_id: 5
   brand_id: 2
goods_price: 2799.000
 is_show: 1
 is_saleoff: 0
*************************** 5. row ***************************
   goods_id: 5
 goods_name: X240(20ALA0EYCD) 12.5     
 cate_id: 7
   brand_id: 7
goods_price: 4999.000
 is_show: 1
 is_saleoff: 0
*************************** 6. row ***************************
   goods_id: 6
 goods_name: U330P 13.3     
 cate_id: 7
   brand_id: 7
goods_price: 4299.000
 is_show: 1
 is_saleoff: 0
*************************** 7. row ***************************
   goods_id: 7
 goods_name: SVP13226SCB 13.3       
 cate_id: 7
   brand_id: 6
goods_price: 7999.000
 is_show: 1
 is_saleoff: 0
*************************** 8. row ***************************
   goods_id: 8
 goods_name: iPad mini MD531CH/A 7.9      
 cate_id: 2
   brand_id: 8
goods_price: 1998.000
 is_show: 1
 is_saleoff: 0
*************************** 9. row ***************************
   goods_id: 9
 goods_name: iPad Air MD788CH/A 9.7       (16G WiFi )
 cate_id: 2
   brand_id: 8
goods_price: 3388.000
 is_show: 1
 is_saleoff: 0
*************************** 10. row ***************************
   goods_id: 10
 goods_name:  iPad mini ME279CH/A    Retina     7.9       (16G WiFi )
 cate_id: 2
   brand_id: 8
goods_price: 2788.000
 is_show: 1
 is_saleoff: 0
*************************** 11. row ***************************
   goods_id: 11
 goods_name: IdeaCentre C340 20      
 cate_id: 1
   brand_id: 7
goods_price: 3499.000
 is_show: 1
 is_saleoff: 0
*************************** 12. row ***************************
   goods_id: 12
 goods_name: Vostro 3800-R1206     
 cate_id: 1
   brand_id: 5
goods_price: 2899.000
 is_show: 1
 is_saleoff: 0
*************************** 13. row ***************************
   goods_id: 13
 goods_name: iMac ME086CH/A 21.5      
 cate_id: 1
   brand_id: 8
goods_price: 9188.000
 is_show: 1
 is_saleoff: 0
*************************** 14. row ***************************
   goods_id: 14
 goods_name: AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )
 cate_id: 1
   brand_id: 3
goods_price: 3699.000
 is_show: 1
 is_saleoff: 0
*************************** 15. row ***************************
   goods_id: 15
 goods_name: Z220SFF F4F06PA   
 cate_id: 3
   brand_id: 4
goods_price: 4288.000
 is_show: 1
 is_saleoff: 0
*************************** 16. row ***************************
   goods_id: 16
 goods_name: PowerEdge T110 II   
 cate_id: 3
   brand_id: 5
goods_price: 5388.000
 is_show: 1
 is_saleoff: 0
*************************** 17. row ***************************
   goods_id: 17
 goods_name: Mac Pro MD878CH/A        
 cate_id: 3
   brand_id: 8
goods_price: 28888.000
 is_show: 1
 is_saleoff: 0
*************************** 18. row ***************************
   goods_id: 18
 goods_name:  HMZ-T3W       
 cate_id: 6
   brand_id: 6
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 19. row ***************************
   goods_id: 19
 goods_name:       
 cate_id: 6
   brand_id: 6
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
*************************** 20. row ***************************
   goods_id: 20
 goods_name: X3250 M4       2583i14
 cate_id: 3
   brand_id: 1
goods_price: 6888.000
 is_show: 1
 is_saleoff: 0
*************************** 21. row ***************************
   goods_id: 21
 goods_name:  HMZ-T3W       
 cate_id: 6
   brand_id: 6
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 22. row ***************************
   goods_id: 22
 goods_name:       
 cate_id: 6
   brand_id: 6
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
22 rows in set (0.00 sec)

ERROR:
No query specified

mysql> INSERT tdb_goods_cates(cate_name) VALUES('   '),('   '),('  ');
ERROR 1146 (42S02): Table 'world.tdb_goods_cates' doesn't exist
mysql>
mysql>    INSERT tdb_goods_brands(brand_name) VALUES('  '),('    '),('  ');
Query OK, 3 rows affected (0.07 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> # tdb_goods         
mysql> INSERT tdb_goods(goods_name,cate_id,brand_id,goods_price) VALUES(' LaserJet Pro P1606dn        ','12','4','1849');
Query OK, 1 row affected (0.08 sec)

mysql> SELECT * FROM tdb_goods_cate;
+---------+---------------+
| cate_id | cate_name     |
+---------+---------------+
|       1 |            |
|       2 |           |
|       3 |    /    |
|       4 |            |
|       5 |            |
|       6 |          |
|       7 |            |
+---------+---------------+
7 rows in set (0.03 sec)

mysql> SELECT * FROM tdb_goods\G;
*************************** 1. row ***************************
   goods_id: 1
 goods_name: R510VC 15.6     
 cate_id: 5
   brand_id: 2
goods_price: 3399.000
 is_show: 1
 is_saleoff: 0
*************************** 2. row ***************************
   goods_id: 2
 goods_name: Y400N 14.0       
 cate_id: 5
   brand_id: 7
goods_price: 4899.000
 is_show: 1
 is_saleoff: 0
*************************** 3. row ***************************
   goods_id: 3
 goods_name: G150TH 15.6     
 cate_id: 4
   brand_id: 9
goods_price: 8499.000
 is_show: 1
 is_saleoff: 0
*************************** 4. row ***************************
   goods_id: 4
 goods_name: X550CC 15.6     
 cate_id: 5
   brand_id: 2
goods_price: 2799.000
 is_show: 1
 is_saleoff: 0
*************************** 5. row ***************************
   goods_id: 5
 goods_name: X240(20ALA0EYCD) 12.5     
 cate_id: 7
   brand_id: 7
goods_price: 4999.000
 is_show: 1
 is_saleoff: 0
*************************** 6. row ***************************
   goods_id: 6
 goods_name: U330P 13.3     
 cate_id: 7
   brand_id: 7
goods_price: 4299.000
 is_show: 1
 is_saleoff: 0
*************************** 7. row ***************************
   goods_id: 7
 goods_name: SVP13226SCB 13.3       
 cate_id: 7
   brand_id: 6
goods_price: 7999.000
 is_show: 1
 is_saleoff: 0
*************************** 8. row ***************************
   goods_id: 8
 goods_name: iPad mini MD531CH/A 7.9      
 cate_id: 2
   brand_id: 8
goods_price: 1998.000
 is_show: 1
 is_saleoff: 0
*************************** 9. row ***************************
   goods_id: 9
 goods_name: iPad Air MD788CH/A 9.7       (16G WiFi )
 cate_id: 2
   brand_id: 8
goods_price: 3388.000
 is_show: 1
 is_saleoff: 0
*************************** 10. row ***************************
   goods_id: 10
 goods_name:  iPad mini ME279CH/A    Retina     7.9       (16G WiFi )
 cate_id: 2
   brand_id: 8
goods_price: 2788.000
 is_show: 1
 is_saleoff: 0
*************************** 11. row ***************************
   goods_id: 11
 goods_name: IdeaCentre C340 20      
 cate_id: 1
   brand_id: 7
goods_price: 3499.000
 is_show: 1
 is_saleoff: 0
*************************** 12. row ***************************
   goods_id: 12
 goods_name: Vostro 3800-R1206     
 cate_id: 1
   brand_id: 5
goods_price: 2899.000
 is_show: 1
 is_saleoff: 0
*************************** 13. row ***************************
   goods_id: 13
 goods_name: iMac ME086CH/A 21.5      
 cate_id: 1
   brand_id: 8
goods_price: 9188.000
 is_show: 1
 is_saleoff: 0
*************************** 14. row ***************************
   goods_id: 14
 goods_name: AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )
 cate_id: 1
   brand_id: 3
goods_price: 3699.000
 is_show: 1
 is_saleoff: 0
*************************** 15. row ***************************
   goods_id: 15
 goods_name: Z220SFF F4F06PA   
 cate_id: 3
   brand_id: 4
goods_price: 4288.000
 is_show: 1
 is_saleoff: 0
*************************** 16. row ***************************
   goods_id: 16
 goods_name: PowerEdge T110 II   
 cate_id: 3
   brand_id: 5
goods_price: 5388.000
 is_show: 1
 is_saleoff: 0
*************************** 17. row ***************************
   goods_id: 17
 goods_name: Mac Pro MD878CH/A        
 cate_id: 3
   brand_id: 8
goods_price: 28888.000
 is_show: 1
 is_saleoff: 0
*************************** 18. row ***************************
   goods_id: 18
 goods_name:  HMZ-T3W       
 cate_id: 6
   brand_id: 6
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 19. row ***************************
   goods_id: 19
 goods_name:       
 cate_id: 6
   brand_id: 6
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
*************************** 20. row ***************************
   goods_id: 20
 goods_name: X3250 M4       2583i14
 cate_id: 3
   brand_id: 1
goods_price: 6888.000
 is_show: 1
 is_saleoff: 0
*************************** 21. row ***************************
   goods_id: 21
 goods_name:  HMZ-T3W       
 cate_id: 6
   brand_id: 6
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 22. row ***************************
   goods_id: 22
 goods_name:       
 cate_id: 6
   brand_id: 6
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
*************************** 23. row ***************************
   goods_id: 23
 goods_name:  LaserJet Pro P1606dn        
 cate_id: 12
   brand_id: 4
goods_price: 1849.000
 is_show: 1
 is_saleoff: 0
23 rows in set (0.00 sec)

ERROR:
No query specified

mysql> #     ,   ;
mysql> #    ,   ;
mysql> SHOW COLUMNS FROM tdb_goods;
+-------------+------------------------+------+-----+---------+----------------+
| Field       | Type                   | Null | Key | Default | Extra          |
+-------------+------------------------+------+-----+---------+----------------+
| goods_id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| goods_name  | varchar(150)           | NO   |     | NULL    |                |
| cate_id     | smallint(5) unsigned   | NO   |     | NULL    |                |
| brand_id    | smallint(5) unsigned   | NO   |     | NULL    |                |
| goods_price | decimal(15,3) unsigned | NO   |     | 0.000   |                |
| is_show     | tinyint(1)             | NO   |     | 1       |                |
| is_saleoff  | tinyint(1)             | NO   |     | 0       |                |
+-------------+------------------------+------+-----+---------+----------------+
7 rows in set (0.00 sec)

mysql> SHOW COLUMNS FROM tdb_goods_cate;
+-----------+----------------------+------+-----+---------+----------------+
| Field     | Type                 | Null | Key | Default | Extra          |
+-----------+----------------------+------+-----+---------+----------------+
| cate_id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| cate_name | varchar(40)          | NO   |     | NULL    |                |
+-----------+----------------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)

mysql> SELECT goods_id,goods_name,cate_name
 -> FROM tdb_goods INNER JOIN tdb_goods_cate
 -> ON tdb_goods.cate_id=tdb_goods_cate.cate_id;
+----------+------------------------------------------------------------------------+---------------+
| goods_id | goods_name                                                             | cate_name     |
+----------+------------------------------------------------------------------------+---------------+
|        1 | R510VC 15.6                                                       |            |
|        2 | Y400N 14.0                                                      |            |
|        3 | G150TH 15.6                                                       |            |
|        4 | X550CC 15.6                                                       |            |
|        5 | X240(20ALA0EYCD) 12.5                                             |            |
|        6 | U330P 13.3                                                        |            |
|        7 | SVP13226SCB 13.3                                                |            |
|        8 | iPad mini MD531CH/A 7.9                                          |           |
|        9 | iPad Air MD788CH/A 9.7       (16G WiFi )                      |           |
|       10 |  iPad mini ME279CH/A    Retina     7.9       (16G WiFi ) |           |
|       11 | IdeaCentre C340 20                                               |            |
|       12 | Vostro 3800-R1206                                                  |            |
|       13 | iMac ME086CH/A 21.5                                              |            |
|       14 | AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )     |            |
|       15 | Z220SFF F4F06PA                                                     |    /    |
|       16 | PowerEdge T110 II                                                   |    /    |
|       17 | Mac Pro MD878CH/A                                               |    /    |
|       18 |  HMZ-T3W                                                         |          |
|       19 |                                                                  |          |
|       20 | X3250 M4       2583i14                                           |    /    |
|       21 |  HMZ-T3W                                                         |          |
|       22 |                                                                  |          |
+----------+------------------------------------------------------------------------+---------------+
22 rows in set (0.01 sec)

mysql> SELECT * FROM tdb_goods_cate;
+---------+---------------+
| cate_id | cate_name     |
+---------+---------------+
|       1 |            |
|       2 |           |
|       3 |    /    |
|       4 |            |
|       5 |            |
|       6 |          |
|       7 |            |
+---------+---------------+
7 rows in set (0.00 sec)

mysql> #    ,                 ;
mysql> SELECT goods_id,goods_name,cate_name
 -> FROM tdb_goods LEFT JOIN tdb_goods_cate
 -> ON tdb_goods.cate_id=tdb_goods_cate.cate_id;
+----------+------------------------------------------------------------------------+---------------+
| goods_id | goods_name                                                             | cate_name     |
+----------+------------------------------------------------------------------------+---------------+
|        1 | R510VC 15.6                                                       |            |
|        2 | Y400N 14.0                                                      |            |
|        3 | G150TH 15.6                                                       |            |
|        4 | X550CC 15.6                                                       |            |
|        5 | X240(20ALA0EYCD) 12.5                                             |            |
|        6 | U330P 13.3                                                        |            |
|        7 | SVP13226SCB 13.3                                                |            |
|        8 | iPad mini MD531CH/A 7.9                                          |           |
|        9 | iPad Air MD788CH/A 9.7       (16G WiFi )                      |           |
|       10 |  iPad mini ME279CH/A    Retina     7.9       (16G WiFi ) |           |
|       11 | IdeaCentre C340 20                                               |            |
|       12 | Vostro 3800-R1206                                                  |            |
|       13 | iMac ME086CH/A 21.5                                              |            |
|       14 | AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )     |            |
|       15 | Z220SFF F4F06PA                                                     |    /    |
|       16 | PowerEdge T110 II                                                   |    /    |
|       17 | Mac Pro MD878CH/A                                               |    /    |
|       18 |  HMZ-T3W                                                         |          |
|       19 |                                                                  |          |
|       20 | X3250 M4       2583i14                                           |    /    |
|       21 |  HMZ-T3W                                                         |          |
|       22 |                                                                  |          |
|       23 |  LaserJet Pro P1606dn                                           | NULL          |
+----------+------------------------------------------------------------------------+---------------+
23 rows in set (0.00 sec)

mysql> #    ,                 ;
mysql> SELECT goods_id,goods_name,cate_name
 -> FROM tdb_goods RIGHT JOIN tdb_goods_cate
 -> ON tdb_goods.cate_id=tdb_goods_cate.cate_id;
+----------+------------------------------------------------------------------------+---------------+
| goods_id | goods_name                                                             | cate_name     |
+----------+------------------------------------------------------------------------+---------------+
|        1 | R510VC 15.6                                                       |            |
|        2 | Y400N 14.0                                                      |            |
|        3 | G150TH 15.6                                                       |            |
|        4 | X550CC 15.6                                                       |            |
|        5 | X240(20ALA0EYCD) 12.5                                             |            |
|        6 | U330P 13.3                                                        |            |
|        7 | SVP13226SCB 13.3                                                |            |
|        8 | iPad mini MD531CH/A 7.9                                          |           |
|        9 | iPad Air MD788CH/A 9.7       (16G WiFi )                      |           |
|       10 |  iPad mini ME279CH/A    Retina     7.9       (16G WiFi ) |           |
|       11 | IdeaCentre C340 20                                               |            |
|       12 | Vostro 3800-R1206                                                  |            |
|       13 | iMac ME086CH/A 21.5                                              |            |
|       14 | AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )     |            |
|       15 | Z220SFF F4F06PA                                                     |    /    |
|       16 | PowerEdge T110 II                                                   |    /    |
|       17 | Mac Pro MD878CH/A                                               |    /    |
|       18 |  HMZ-T3W                                                         |          |
|       19 |                                                                  |          |
|       20 | X3250 M4       2583i14                                           |    /    |
|       21 |  HMZ-T3W                                                         |          |
|       22 |                                                                  |          |
+----------+------------------------------------------------------------------------+---------------+
22 rows in set (0.02 sec)

mysql> SELECT goods_id,goods_name,cate_name
 -> FROM tdb_goods LEFT JOIN tdb_goods_cate
 -> ON tdb_goods.cate_id=tdb_goods_cate.cate_id\G;
*************************** 1. row ***************************
  goods_id: 1
goods_name: R510VC 15.6     
 cate_name:    
*************************** 2. row ***************************
  goods_id: 2
goods_name: Y400N 14.0       
 cate_name:    
*************************** 3. row ***************************
  goods_id: 3
goods_name: G150TH 15.6     
 cate_name:    
*************************** 4. row ***************************
  goods_id: 4
goods_name: X550CC 15.6     
 cate_name:    
*************************** 5. row ***************************
  goods_id: 5
goods_name: X240(20ALA0EYCD) 12.5     
 cate_name:    
*************************** 6. row ***************************
  goods_id: 6
goods_name: U330P 13.3     
 cate_name:    
*************************** 7. row ***************************
  goods_id: 7
goods_name: SVP13226SCB 13.3       
 cate_name:    
*************************** 8. row ***************************
  goods_id: 8
goods_name: iPad mini MD531CH/A 7.9      
 cate_name:     
*************************** 9. row ***************************
  goods_id: 9
goods_name: iPad Air MD788CH/A 9.7       (16G WiFi )
 cate_name:     
*************************** 10. row ***************************
  goods_id: 10
goods_name:  iPad mini ME279CH/A    Retina     7.9       (16G WiFi )
 cate_name:     
*************************** 11. row ***************************
  goods_id: 11
goods_name: IdeaCentre C340 20      
 cate_name:    
*************************** 12. row ***************************
  goods_id: 12
goods_name: Vostro 3800-R1206     
 cate_name:    
*************************** 13. row ***************************
  goods_id: 13
goods_name: iMac ME086CH/A 21.5      
 cate_name:    
*************************** 14. row ***************************
  goods_id: 14
goods_name: AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )
 cate_name:    
*************************** 15. row ***************************
  goods_id: 15
goods_name: Z220SFF F4F06PA   
 cate_name:    /   
*************************** 16. row ***************************
  goods_id: 16
goods_name: PowerEdge T110 II   
 cate_name:    /   
*************************** 17. row ***************************
  goods_id: 17
goods_name: Mac Pro MD878CH/A        
 cate_name:    /   
*************************** 18. row ***************************
  goods_id: 18
goods_name:  HMZ-T3W       
 cate_name:      
*************************** 19. row ***************************
  goods_id: 19
goods_name:       
 cate_name:      
*************************** 20. row ***************************
  goods_id: 20
goods_name: X3250 M4       2583i14
 cate_name:    /   
*************************** 21. row ***************************
  goods_id: 21
goods_name:  HMZ-T3W       
 cate_name:      
*************************** 22. row ***************************
  goods_id: 22
goods_name:       
 cate_name:      
*************************** 23. row ***************************
  goods_id: 23
goods_name:  LaserJet Pro P1606dn        
 cate_name: NULL
23 rows in set (0.00 sec)

ERROR:
No query specified

mysql> #    ;
mysql> SHOW COLUMNS FROM tdb_goods\G;
*************************** 1. row ***************************
  Field: goods_id
   Type: smallint(5) unsigned
   Null: NO
 Key: PRI
Default: NULL
  Extra: auto_increment
*************************** 2. row ***************************
  Field: goods_name
   Type: varchar(150)
   Null: NO
 Key:
Default: NULL
  Extra:
*************************** 3. row ***************************
  Field: cate_id
   Type: smallint(5) unsigned
   Null: NO
 Key:
Default: NULL
  Extra:
*************************** 4. row ***************************
  Field: brand_id
   Type: smallint(5) unsigned
   Null: NO
 Key:
Default: NULL
  Extra:
*************************** 5. row ***************************
  Field: goods_price
   Type: decimal(15,3) unsigned
   Null: NO
 Key:
Default: 0.000
  Extra:
*************************** 6. row ***************************
  Field: is_show
   Type: tinyint(1)
   Null: NO
 Key:
Default: 1
  Extra:
*************************** 7. row ***************************
  Field: is_saleoff
   Type: tinyint(1)
   Null: NO
 Key:
Default: 0
  Extra:
7 rows in set (0.00 sec)

ERROR:
No query specified

mysql> #        ;

mysql> SELECT goods_id,goods_name,cate_name,brand_name,goods_price FROM tdb_goods AS g
 -> INNER JOIN tdb_goods_cate AS c
 -> ON g.cate_id=c.cate_id
 -> INNER JOIN tdb_goods_brands AS b
 -> ON g.brand_id=b.brand_id\G;
*************************** 1. row ***************************
   goods_id: 1
 goods_name: R510VC 15.6     
  cate_name:    
 brand_name:   
goods_price: 3399.000
*************************** 2. row ***************************
   goods_id: 2
 goods_name: Y400N 14.0       
  cate_name:    
 brand_name:   
goods_price: 4899.000
*************************** 3. row ***************************
   goods_id: 3
 goods_name: G150TH 15.6     
  cate_name:    
 brand_name:   
goods_price: 8499.000
*************************** 4. row ***************************
   goods_id: 4
 goods_name: X550CC 15.6     
  cate_name:    
 brand_name:   
goods_price: 2799.000
*************************** 5. row ***************************
   goods_id: 5
 goods_name: X240(20ALA0EYCD) 12.5     
  cate_name:    
 brand_name:   
goods_price: 4999.000
*************************** 6. row ***************************
   goods_id: 6
 goods_name: U330P 13.3     
  cate_name:    
 brand_name:   
goods_price: 4299.000
*************************** 7. row ***************************
   goods_id: 7
 goods_name: SVP13226SCB 13.3       
  cate_name:    
 brand_name:   
goods_price: 7999.000
*************************** 8. row ***************************
   goods_id: 8
 goods_name: iPad mini MD531CH/A 7.9      
  cate_name:     
 brand_name:   
goods_price: 1998.000
*************************** 9. row ***************************
   goods_id: 9
 goods_name: iPad Air MD788CH/A 9.7       (16G WiFi )
  cate_name:     
 brand_name:   
goods_price: 3388.000
*************************** 10. row ***************************
   goods_id: 10
 goods_name:  iPad mini ME279CH/A    Retina     7.9       (16G WiFi )
  cate_name:     
 brand_name:   
goods_price: 2788.000
*************************** 11. row ***************************
   goods_id: 11
 goods_name: IdeaCentre C340 20      
  cate_name:    
 brand_name:   
goods_price: 3499.000
*************************** 12. row ***************************
   goods_id: 12
 goods_name: Vostro 3800-R1206     
  cate_name:    
 brand_name:   
goods_price: 2899.000
*************************** 13. row ***************************
   goods_id: 13
 goods_name: iMac ME086CH/A 21.5      
  cate_name:    
 brand_name:   
goods_price: 9188.000
*************************** 14. row ***************************
   goods_id: 14
 goods_name: AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )
  cate_name:    
 brand_name:   
goods_price: 3699.000
*************************** 15. row ***************************
   goods_id: 15
 goods_name: Z220SFF F4F06PA   
  cate_name:    /   
 brand_name:   
goods_price: 4288.000
*************************** 16. row ***************************
   goods_id: 16
 goods_name: PowerEdge T110 II   
  cate_name:    /   
 brand_name:   
goods_price: 5388.000
*************************** 17. row ***************************
   goods_id: 17
 goods_name: Mac Pro MD878CH/A        
  cate_name:    /   
 brand_name:   
goods_price: 28888.000
*************************** 18. row ***************************
   goods_id: 18
 goods_name:  HMZ-T3W       
  cate_name:      
 brand_name:   
goods_price: 6999.000
*************************** 19. row ***************************
   goods_id: 19
 goods_name:       
  cate_name:      
 brand_name:   
goods_price: 99.000
*************************** 20. row ***************************
   goods_id: 20
 goods_name: X3250 M4       2583i14
  cate_name:    /   
 brand_name: IBM
goods_price: 6888.000
*************************** 21. row ***************************
   goods_id: 21
 goods_name:  HMZ-T3W       
  cate_name:      
 brand_name:   
goods_price: 6999.000
*************************** 22. row ***************************
   goods_id: 22
 goods_name:       
  cate_name:      
 brand_name:   
goods_price: 99.000
22 rows in set (0.02 sec)

ERROR:
No query specified

mysql>
mysql> #SHOW COLUMNS FROM tdb_goods_cate;
mysql> SHOW COLUMNS FROM tdb_goods_cate;
+-----------+----------------------+------+-----+---------+----------------+
| Field     | Type                 | Null | Key | Default | Extra          |
+-----------+----------------------+------+-----+---------+----------------+
| cate_id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| cate_name | varchar(40)          | NO   |     | NULL    |                |
+-----------+----------------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)

mysql> SELECT * FROM tdb_goods_cate;
+---------+---------------+
| cate_id | cate_name     |
+---------+---------------+
|       1 |            |
|       2 |           |
|       3 |    /    |
|       4 |            |
|       5 |            |
|       6 |          |
|       7 |            |
+---------+---------------+
7 rows in set (0.00 sec)

mysql> CREATE TABLE tdb_goods_types(
 -> type_id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
 -> type_name VARCHAR(20) NOT NULL,
 -> parent_id SMALLINT UNSIGNED NOT NULL DEFAULT 0
 -> );
Query OK, 0 rows affected (0.19 sec)

mysql> INSERT tdb_goods_types(type_name,parent_id) VALUES('    ',DEFAULT);
Query OK, 1 row affected (0.05 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('  、  ',DEFAULT);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('   ',1);
Query OK, 1 row affected (0.06 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('    ',1);
Query OK, 1 row affected (0.05 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('    ',3);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('  ',3);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('   ',4);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('   ',4);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('    ',2);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('    ',2);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('   ',9);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('   ',9);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('   ',9);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('CPU',10);
Query OK, 1 row affected (0.02 sec)

mysql>   INSERT tdb_goods_types(type_name,parent_id) VALUES('  ',10);
Query OK, 1 row affected (0.04 sec)

mysql>
mysql> #      ;
mysql> SHOW COLUMNS FROM tdb_goods_types;
+-----------+----------------------+------+-----+---------+----------------+
| Field     | Type                 | Null | Key | Default | Extra          |
+-----------+----------------------+------+-----+---------+----------------+
| type_id | smallint(5) unsigned | NO | PRI | NULL | auto_increment |
| type_name | varchar(20)          | NO   |     | NULL    |                |
| parent_id | smallint(5) unsigned | NO   |     | 0       |                |
+-----------+----------------------+------+-----+---------+----------------+
3 rows in set (0.00 sec)

mysql> SELECT * FROM tdb_goods_types;
+---------+------------+-----------+
| type_id | type_name  | parent_id |
+---------+------------+-----------+
|       1 |        |         0 |
|       2 |   、   |         0 |
|       3 |         |         1 |
|       4 |        |         1 |
|       5 |        |         3 |
|       6 |          |         3 |
|       7 |         |         4 |
|       8 |         |         4 |
|       9 |        |         2 |
|      10 |        |         2 |
|      11 |         |         9 |
|      12 |         |         9 |
|      13 |         |         9 |
|      14 | CPU        |        10 |
|      15 |          |        10 |
+---------+------------+-----------+
15 rows in set (0.00 sec)

mysql> #    ;
mysql> #               ;
mysql> #        ,     ;
mysql> #s son,p parents;
mysql>
mysql> SELECT s.type_id,s.type_name,p.type_name
 -> FROM tdb_goods_types AS s
 -> LEFT JOIN tdb_goods_types AS p
 -> ON s.parent_id=p.type_id;
+---------+------------+------------+
| type_id | type_name  | type_name  |
+---------+------------+------------+
|       1 |        | NULL       |
|       2 |   、   | NULL       |
|       3 |         |        |
|       4 |        |        |
|       5 |        |         |
|       6 |          |         |
|       7 |         |        |
|       8 |         |        |
|       9 |        |   、   |
|      10 |        |   、   |
|      11 |         |        |
|      12 |         |        |
|      13 |         |        |
|      14 | CPU        |        |
|      15 |          |        |
+---------+------------+------------+
15 rows in set (0.02 sec)

mysql> SELECT * FROM tdb_goods_types;
+---------+------------+-----------+
| type_id | type_name  | parent_id |
+---------+------------+-----------+
|       1 |        |         0 |
|       2 |   、   |         0 |
|       3 |         |         1 |
|       4 |        |         1 |
|       5 |        |         3 |
|       6 |          |         3 |
|       7 |         |         4 |
|       8 |         |         4 |
|       9 |        |         2 |
|      10 |        |         2 |
|      11 |         |         9 |
|      12 |         |         9 |
|      13 |         |         9 |
|      14 | CPU        |        10 |
|      15 |          |        10 |
+---------+------------+-----------+
15 rows in set (0.00 sec)

mysql> #     ,    ;
mysql> SELECT p.type_id,p.type_name,s.type_name FROM tdb_goods_types AS p
 -> LEFT JOIN tdb_goods_types AS s
 -> ON s.parent_id=p.type_id;
+---------+------------+-----------+
| type_id | type_name  | type_name |
+---------+------------+-----------+
|       1 |        |        |
|       1 |        |       |
|       3 |         |       |
|       3 |         |         |
|       4 |        |        |
|       4 |        |        |
|       2 |   、   |       |
|       2 |   、   |       |
|       9 |        |        |
|       9 |        |        |
|       9 |        |        |
|      10 |        | CPU       |
|      10 |        |         |
|       5 |        | NULL      |
|       6 |          | NULL      |
|       7 |         | NULL      |
|       8 |         | NULL      |
|      11 |         | NULL      |
|      12 |         | NULL      |
|      13 |         | NULL      |
|      14 | CPU        | NULL      |
|      15 |          | NULL      |
+---------+------------+-----------+
22 rows in set (0.00 sec)

mysql> #    ;
mysql> SELECT p.type_id,p.type_name,s.type_name FROM tdb_goods_types AS p
 -> LEFT JOIN tdb_goods_types AS s
 -> ON s.parent_id=p.type_id GROUP BY p.type_name;
+---------+------------+-----------+
| type_id | type_name  | type_name |
+---------+------------+-----------+
|      14 | CPU        | NULL      |
|      15 |          | NULL      |
|       3 |         |       |
|       1 |        |        |
|       5 |        | NULL      |
|      13 |         | NULL      |
|       4 |        |        |
|       2 |   、   |       |
|       9 |        |        |
|      10 |        | CPU       |
|       7 |         | NULL      |
|       6 |          | NULL      |
|      11 |         | NULL      |
|      12 |         | NULL      |
|       8 |         | NULL      |
+---------+------------+-----------+
15 rows in set (0.00 sec)

mysql> SELECT p.type_id,p.type_name,s.type_name FROM tdb_goods_types AS p
 -> LEFT JOIN tdb_goods_types AS s
 -> ON s.parent_id=p.type_id ORDER BY p.type_id;
+---------+------------+-----------+
| type_id | type_name  | type_name |
+---------+------------+-----------+
|       1 |        |        |
|       1 |        |       |
|       2 |   、   |       |
|       2 |   、   |       |
|       3 |         |       |
|       3 |         |         |
|       4 |        |        |
|       4 |        |        |
|       5 |        | NULL      |
|       6 |          | NULL      |
|       7 |         | NULL      |
|       8 |         | NULL      |
|       9 |        |        |
|       9 |        |        |
|       9 |        |        |
|      10 |        |         |
|      10 |        | CPU       |
|      11 |         | NULL      |
|      12 |         | NULL      |
|      13 |         | NULL      |
|      14 | CPU        | NULL      |
|      15 |          | NULL      |
+---------+------------+-----------+
22 rows in set (0.00 sec)

mysql> SELECT p.type_id,count(p.type_name) child_count,s.type_name FROM tdb_goods_types AS p
 -> LEFT JOIN tdb_goods_types AS s
 -> ON s.parent_id=p.type_id ORDER BY p.type_id;
+---------+-------------+-----------+
| type_id | child_count | type_name |
+---------+-------------+-----------+
|       1 |          22 |        |
+---------+-------------+-----------+
1 row in set (0.02 sec)

mysql> SELECT * FROM tdb_goods\G;
*************************** 1. row ***************************
   goods_id: 1
 goods_name: R510VC 15.6     
 cate_id: 5
   brand_id: 2
goods_price: 3399.000
 is_show: 1
 is_saleoff: 0
*************************** 2. row ***************************
   goods_id: 2
 goods_name: Y400N 14.0       
 cate_id: 5
   brand_id: 7
goods_price: 4899.000
 is_show: 1
 is_saleoff: 0
*************************** 3. row ***************************
   goods_id: 3
 goods_name: G150TH 15.6     
 cate_id: 4
   brand_id: 9
goods_price: 8499.000
 is_show: 1
 is_saleoff: 0
*************************** 4. row ***************************
   goods_id: 4
 goods_name: X550CC 15.6     
 cate_id: 5
   brand_id: 2
goods_price: 2799.000
 is_show: 1
 is_saleoff: 0
*************************** 5. row ***************************
   goods_id: 5
 goods_name: X240(20ALA0EYCD) 12.5     
 cate_id: 7
   brand_id: 7
goods_price: 4999.000
 is_show: 1
 is_saleoff: 0
*************************** 6. row ***************************
   goods_id: 6
 goods_name: U330P 13.3     
 cate_id: 7
   brand_id: 7
goods_price: 4299.000
 is_show: 1
 is_saleoff: 0
*************************** 7. row ***************************
   goods_id: 7
 goods_name: SVP13226SCB 13.3       
 cate_id: 7
   brand_id: 6
goods_price: 7999.000
 is_show: 1
 is_saleoff: 0
*************************** 8. row ***************************
   goods_id: 8
 goods_name: iPad mini MD531CH/A 7.9      
 cate_id: 2
   brand_id: 8
goods_price: 1998.000
 is_show: 1
 is_saleoff: 0
*************************** 9. row ***************************
   goods_id: 9
 goods_name: iPad Air MD788CH/A 9.7       (16G WiFi )
 cate_id: 2
   brand_id: 8
goods_price: 3388.000
 is_show: 1
 is_saleoff: 0
*************************** 10. row ***************************
   goods_id: 10
 goods_name:  iPad mini ME279CH/A    Retina     7.9       (16G WiFi )
 cate_id: 2
   brand_id: 8
goods_price: 2788.000
 is_show: 1
 is_saleoff: 0
*************************** 11. row ***************************
   goods_id: 11
 goods_name: IdeaCentre C340 20      
 cate_id: 1
   brand_id: 7
goods_price: 3499.000
 is_show: 1
 is_saleoff: 0
*************************** 12. row ***************************
   goods_id: 12
 goods_name: Vostro 3800-R1206     
 cate_id: 1
   brand_id: 5
goods_price: 2899.000
 is_show: 1
 is_saleoff: 0
*************************** 13. row ***************************
   goods_id: 13
 goods_name: iMac ME086CH/A 21.5      
 cate_id: 1
   brand_id: 8
goods_price: 9188.000
 is_show: 1
 is_saleoff: 0
*************************** 14. row ***************************
   goods_id: 14
 goods_name: AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )
 cate_id: 1
   brand_id: 3
goods_price: 3699.000
 is_show: 1
 is_saleoff: 0
*************************** 15. row ***************************
   goods_id: 15
 goods_name: Z220SFF F4F06PA   
 cate_id: 3
   brand_id: 4
goods_price: 4288.000
 is_show: 1
 is_saleoff: 0
*************************** 16. row ***************************
   goods_id: 16
 goods_name: PowerEdge T110 II   
 cate_id: 3
   brand_id: 5
goods_price: 5388.000
 is_show: 1
 is_saleoff: 0
*************************** 17. row ***************************
   goods_id: 17
 goods_name: Mac Pro MD878CH/A        
 cate_id: 3
   brand_id: 8
goods_price: 28888.000
 is_show: 1
 is_saleoff: 0
*************************** 18. row ***************************
   goods_id: 18
 goods_name:  HMZ-T3W       
 cate_id: 6
   brand_id: 6
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 19. row ***************************
   goods_id: 19
 goods_name:       
 cate_id: 6
   brand_id: 6
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
*************************** 20. row ***************************
   goods_id: 20
 goods_name: X3250 M4       2583i14
 cate_id: 3
   brand_id: 1
goods_price: 6888.000
 is_show: 1
 is_saleoff: 0
*************************** 21. row ***************************
   goods_id: 21
 goods_name:  HMZ-T3W       
 cate_id: 6
   brand_id: 6
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 22. row ***************************
   goods_id: 22
 goods_name:       
 cate_id: 6
   brand_id: 6
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
*************************** 23. row ***************************
   goods_id: 23
 goods_name:  LaserJet Pro P1606dn        
 cate_id: 12
   brand_id: 4
goods_price: 1849.000
 is_show: 1
 is_saleoff: 0
23 rows in set (0.00 sec)

ERROR:
No query specified

mysql> #               ;
mysql> SELECT goods_id,goods_name FROM tdb_goods
 -> GROUP BY goods_name;
+----------+------------------------------------------------------------------------+
| goods_id | goods_name                                                             |
+----------+------------------------------------------------------------------------+
|       18 |  HMZ-T3W                                                         |
|       10 |  iPad mini ME279CH/A    Retina     7.9       (16G WiFi ) |
|       23 |  LaserJet Pro P1606dn                                           |
|       14 | AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )     |
|        3 | G150TH 15.6                                                       |
|       11 | IdeaCentre C340 20                                               |
|       13 | iMac ME086CH/A 21.5                                              |
|        9 | iPad Air MD788CH/A 9.7       (16G WiFi )                      |
|        8 | iPad mini MD531CH/A 7.9                                          |
|       17 | Mac Pro MD878CH/A                                               |
|       16 | PowerEdge T110 II                                                   |
|        1 | R510VC 15.6                                                       |
|        7 | SVP13226SCB 13.3                                                |
|        6 | U330P 13.3                                                        |
|       12 | Vostro 3800-R1206                                                  |
|        5 | X240(20ALA0EYCD) 12.5                                             |
|       20 | X3250 M4       2583i14                                           |
|        4 | X550CC 15.6                                                       |
|        2 | Y400N 14.0                                                      |
|       15 | Z220SFF F4F06PA                                                     |
|       19 |                                                                  |
+----------+------------------------------------------------------------------------+
21 rows in set (0.01 sec)

mysql> SELECT goods_id,goods_name FROM tdb_goods
 -> GROUP BY goods_name HAVING count(goods_name)>=2;
+----------+-----------------------+
| goods_id | goods_name            |
+----------+-----------------------+
|       18 |  HMZ-T3W        |
|       19 |                 |
+----------+-----------------------+
2 rows in set (0.01 sec)

mysql> #       ;
mysql> DELETE t1 FROM tdb_goods AS t1
 -> LEFT JOIN (SELECT goods_id,goods_name FROM tdb_goods
 -> GROUP BY goods_name HAVING count(goods_name)>=2) AS t2
 -> ON t1.goods_name=t2.goods_name
 -> WHERE t1.goods_id>t2.goods_id;
Query OK, 2 rows affected (0.08 sec)

mysql> SELECT * FROM tdb_goods\G;
*************************** 1. row ***************************
   goods_id: 1
 goods_name: R510VC 15.6     
 cate_id: 5
   brand_id: 2
goods_price: 3399.000
 is_show: 1
 is_saleoff: 0
*************************** 2. row ***************************
   goods_id: 2
 goods_name: Y400N 14.0       
 cate_id: 5
   brand_id: 7
goods_price: 4899.000
 is_show: 1
 is_saleoff: 0
*************************** 3. row ***************************
   goods_id: 3
 goods_name: G150TH 15.6     
 cate_id: 4
   brand_id: 9
goods_price: 8499.000
 is_show: 1
 is_saleoff: 0
*************************** 4. row ***************************
   goods_id: 4
 goods_name: X550CC 15.6     
 cate_id: 5
   brand_id: 2
goods_price: 2799.000
 is_show: 1
 is_saleoff: 0
*************************** 5. row ***************************
   goods_id: 5
 goods_name: X240(20ALA0EYCD) 12.5     
 cate_id: 7
   brand_id: 7
goods_price: 4999.000
 is_show: 1
 is_saleoff: 0
*************************** 6. row ***************************
   goods_id: 6
 goods_name: U330P 13.3     
 cate_id: 7
   brand_id: 7
goods_price: 4299.000
 is_show: 1
 is_saleoff: 0
*************************** 7. row ***************************
   goods_id: 7
 goods_name: SVP13226SCB 13.3       
 cate_id: 7
   brand_id: 6
goods_price: 7999.000
 is_show: 1
 is_saleoff: 0
*************************** 8. row ***************************
   goods_id: 8
 goods_name: iPad mini MD531CH/A 7.9      
 cate_id: 2
   brand_id: 8
goods_price: 1998.000
 is_show: 1
 is_saleoff: 0
*************************** 9. row ***************************
   goods_id: 9
 goods_name: iPad Air MD788CH/A 9.7       (16G WiFi )
 cate_id: 2
   brand_id: 8
goods_price: 3388.000
 is_show: 1
 is_saleoff: 0
*************************** 10. row ***************************
   goods_id: 10
 goods_name:  iPad mini ME279CH/A    Retina     7.9       (16G WiFi )
 cate_id: 2
   brand_id: 8
goods_price: 2788.000
 is_show: 1
 is_saleoff: 0
*************************** 11. row ***************************
   goods_id: 11
 goods_name: IdeaCentre C340 20      
 cate_id: 1
   brand_id: 7
goods_price: 3499.000
 is_show: 1
 is_saleoff: 0
*************************** 12. row ***************************
   goods_id: 12
 goods_name: Vostro 3800-R1206     
 cate_id: 1
   brand_id: 5
goods_price: 2899.000
 is_show: 1
 is_saleoff: 0
*************************** 13. row ***************************
   goods_id: 13
 goods_name: iMac ME086CH/A 21.5      
 cate_id: 1
   brand_id: 8
goods_price: 9188.000
 is_show: 1
 is_saleoff: 0
*************************** 14. row ***************************
   goods_id: 14
 goods_name: AT7-7414LP      (i5-3450   4G 500G 2G   DVD    Linux )
 cate_id: 1
   brand_id: 3
goods_price: 3699.000
 is_show: 1
 is_saleoff: 0
*************************** 15. row ***************************
   goods_id: 15
 goods_name: Z220SFF F4F06PA   
 cate_id: 3
   brand_id: 4
goods_price: 4288.000
 is_show: 1
 is_saleoff: 0
*************************** 16. row ***************************
   goods_id: 16
 goods_name: PowerEdge T110 II   
 cate_id: 3
   brand_id: 5
goods_price: 5388.000
 is_show: 1
 is_saleoff: 0
*************************** 17. row ***************************
   goods_id: 17
 goods_name: Mac Pro MD878CH/A        
 cate_id: 3
   brand_id: 8
goods_price: 28888.000
 is_show: 1
 is_saleoff: 0
*************************** 18. row ***************************
   goods_id: 18
 goods_name:  HMZ-T3W       
 cate_id: 6
   brand_id: 6
goods_price: 6999.000
 is_show: 1
 is_saleoff: 0
*************************** 19. row ***************************
   goods_id: 19
 goods_name:       
 cate_id: 6
   brand_id: 6
goods_price: 99.000
 is_show: 1
 is_saleoff: 0
*************************** 20. row ***************************
   goods_id: 20
 goods_name: X3250 M4       2583i14
 cate_id: 3
   brand_id: 1
goods_price: 6888.000
 is_show: 1
 is_saleoff: 0
*************************** 21. row ***************************
   goods_id: 23
 goods_name:  LaserJet Pro P1606dn        
 cate_id: 12
   brand_id: 4
goods_price: 1849.000
 is_show: 1
 is_saleoff: 0
21 rows in set (0.00 sec)

ERROR:
No query specified