Mega Code Archive

 
Categories / MySQL / Table Index
 

Combining Columns to Construct Composite Values

mysql> mysql> CREATE TABLE mail     -> (     ->  t               DATETIME,       # when message was sent     ->  senderUser      CHAR(8),        # sender (source user and host)     ->  senderHost      CHAR(20),     ->  recipientUser   CHAR(8),        # recipient (destination user and host)     ->  recipientHost   CHAR(20),     ->  size    BIGINT,         # message size in bytes     ->  INDEX   (t)     -> ); Query OK, 0 rows affected (0.01 sec) mysql> mysql> INSERT INTO mail (t,senderHost,senderUser,recipientHost,recipientUser,size)     ->  VALUES     ->          ('2010-05-11 10:15:08','saturn','barb','mars','tricia',58274),     ->          ('2010-05-12 12:48:13','mars','tricia','venus','gene',194925),     ->          ('2010-05-12 15:02:49','mars','phil','saturn','phil',1048),     ->          ('2010-05-13 13:59:18','saturn','barb','venus','tricia',271),     ->          ('2010-05-14 09:31:37','venus','gene','mars','barb',2291),     ->          ('2010-05-14 11:52:17','mars','phil','saturn','tricia',5781),     ->          ('2010-05-14 14:42:21','venus','barb','venus','barb',98151),     ->          ('2010-05-14 17:03:01','saturn','tricia','venus','phil',2394482),     ->          ('2010-05-15 07:17:48','mars','gene','saturn','gene',3824),     ->          ('2010-05-15 08:50:57','venus','phil','venus','phil',978),     ->          ('2010-05-15 10:25:52','mars','gene','saturn','tricia',998532),     ->          ('2010-05-15 17:35:31','saturn','gene','mars','gene',3856),     ->          ('2010-05-16 09:00:28','venus','gene','mars','barb',613),     ->          ('2010-05-16 23:04:19','venus','phil','venus','barb',10294),     ->          ('2010-05-17 12:49:23','mars','phil','saturn','tricia',873),     ->          ('2010-05-19 22:21:51','saturn','gene','venus','gene',23992)     -> ; Query OK, 16 rows affected (0.00 sec) Records: 16  Duplicates: 0  Warnings: 0 mysql> mysql> mysql> SELECT     ->  DATE_FORMAT(t,'%M %e, %Y') AS date_sent,     ->  CONCAT(senderUser,'@',senderHost) AS sender,     ->  CONCAT(recipientUser,'@',recipientHost) AS recipient,     ->  size FROM mail; +--------------+---------------+---------------+---------+ | date_sent    | sender        | recipient     | size    | +--------------+---------------+---------------+---------+ | May 11, 2010 | barb@saturn   | tricia@mars   |   58274 | | May 12, 2010 | tricia@mars   | gene@venus    |  194925 | | May 12, 2010 | phil@mars     | phil@saturn   |    1048 | | May 13, 2010 | barb@saturn   | tricia@venus  |     271 | | May 14, 2010 | gene@venus    | barb@mars     |    2291 | | May 14, 2010 | phil@mars     | tricia@saturn |    5781 | | May 14, 2010 | barb@venus    | barb@venus    |   98151 | | May 14, 2010 | tricia@saturn | phil@venus    | 2394482 | | May 15, 2010 | gene@mars     | gene@saturn   |    3824 | | May 15, 2010 | phil@venus    | phil@venus    |     978 | | May 15, 2010 | gene@mars     | tricia@saturn |  998532 | | May 15, 2010 | gene@saturn   | gene@mars     |    3856 | | May 16, 2010 | gene@venus    | barb@mars     |     613 | | May 16, 2010 | phil@venus    | barb@venus    |   10294 | | May 17, 2010 | phil@mars     | tricia@saturn |     873 | | May 19, 2010 | gene@saturn   | gene@venus    |   23992 | +--------------+---------------+---------------+---------+ 16 rows in set (0.00 sec) mysql> mysql> drop table mail; Query OK, 0 rows affected (0.00 sec) mysql>