Você está na página 1de 5

Aliasing the function in select statement

mysql>
->
->
->
->
->
->
->
->
->
mysql>
mysql>
->
->
->

CREATE TABLE Topic(


TopicID
SMALLINT NOT NULL AUTO_INCREMENT PRIMARY KEY,
Name
VARCHAR(50) NOT NULL,
InStock
SMALLINT UNSIGNED NOT NULL,
OnOrder
SMALLINT UNSIGNED NOT NULL,
Reserved
SMALLINT UNSIGNED NOT NULL,
Department ENUM('Classical', 'Popular') NOT NULL,
Category
VARCHAR(20) NOT NULL,
RowUpdate
TIMESTAMP NOT NULL
);
SELECT concat(First_Name, " ",Last_Name) AS Name FROM employee;
SELECT Name, InStock+OnOrder-Reserved AS Available
FROM Topic
WHERE Name LIKE '%bach%'
ORDER BY Name;

To sort the output by alias


mysql>
mysql>
mysql> CREATE TABLE Employee(
->
id
int,
->
first_name
VARCHAR(15),
->
last_name
VARCHAR(15),
->
start_date
DATE,
->
end_date
DATE,
->
salary
FLOAT(8,2),
->
city
VARCHAR(10),
->
description
VARCHAR(15)
-> );
Query OK, 0 rows affected (0.03 sec)
mysql>
mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values (1,'Jason',
'Martin', '19960725', '20060725', 1234.56,
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(2,'Alison',
'Mathews', '19760321', '19860221', 6661.78,
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(3,'James',
'Smith',
'19781212', '19900315', 6544.78,

Query OK, 1 row affected (0.00 sec)


mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(4,'Celia',
'Rice',
'19821024', '19990421', 2344.78,
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(5,'Robert',
'Black',
'19840115', '19980808', 2334.78,
Query OK, 1 row affected (0.00 sec)

mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(6,'Linda',
'Green',
'19870730', '19960104', 4322.78,'
Query OK, 1 row affected (0.02 sec)

mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(7,'David',
'Larry',
'19901231', '19980212', 7897.78,'
Query OK, 1 row affected (0.00 sec)

mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(8,'James',
'Cat',
'19960917', '20020415', 1232.78,'
Query OK, 1 row affected (0.01 sec)

mysql>
mysql> select * from Employee;
+------+------------+-----------+------------+------------+---------+-----------+-----| id
| first_name | last_name | start_date | end_date
| salary | city
| descr
+------+------------+-----------+------------+------------+---------+-----------+-----|
1 | Jason
| Martin
| 1996-07-25 | 2006-07-25 | 1234.56 | Toronto
| Progr
|
2 | Alison
| Mathews
| 1976-03-21 | 1986-02-21 | 6661.78 | Vancouver | Teste
|
3 | James
| Smith
| 1978-12-12 | 1990-03-15 | 6544.78 | Vancouver | Teste
|
4 | Celia
| Rice
| 1982-10-24 | 1999-04-21 | 2344.78 | Vancouver | Manag
|
5 | Robert
| Black
| 1984-01-15 | 1998-08-08 | 2334.78 | Vancouver | Teste
|
6 | Linda
| Green
| 1987-07-30 | 1996-01-04 | 4322.78 | New York | Teste
|
7 | David
| Larry
| 1990-12-31 | 1998-02-12 | 7897.78 | New York | Manag
|
8 | James
| Cat
| 1996-09-17 | 2002-04-15 | 1232.78 | Vancouver | Teste
+------+------------+-----------+------------+------------+---------+-----------+-----8 rows in set (0.00 sec)
mysql>
mysql> SELECT first_name, start_date, CURDATE(),
-> (YEAR(CURDATE())-YEAR(start_date)) - (RIGHT(CURDATE(),5)<RIGHT(start_date,5))
-> AS YearServed
-> FROM employee ORDER BY YearServed;
+------------+------------+------------+------------+
| first_name | start_date | CURDATE() | YearServed |
+------------+------------+------------+------------+
| Jason
| 1996-07-25 | 2007-07-22 |
10 |
| James
| 1996-09-17 | 2007-07-22 |
10 |
| David
| 1990-12-31 | 2007-07-22 |
16 |
| Linda
| 1987-07-30 | 2007-07-22 |
19 |
| Robert
| 1984-01-15 | 2007-07-22 |
23 |

| Celia
| 1982-10-24 | 2007-07-22 |
24 |
| James
| 1978-12-12 | 2007-07-22 |
28 |
| Alison
| 1976-03-21 | 2007-07-22 |
31 |
+------------+------------+------------+------------+
8 rows in set (0.00 sec)
mysql>
mysql>
mysql> drop table Employee;
Query OK, 0 rows affected (0.00 sec)

Use Aliasing in table joins


mysql>
mysql> CREATE TABLE Employee(
->
id
int,
->
first_name
VARCHAR(15),
->
last_name
VARCHAR(15),
->
start_date
DATE,
->
end_date
DATE,
->
salary
FLOAT(8,2),
->
city
VARCHAR(10),
->
description
VARCHAR(15)
-> );
Query OK, 0 rows affected (0.01 sec)
mysql>
mysql> create table job (
->
id
int,
->
title
VARCHAR(20)
-> );
Query OK, 0 rows affected (0.03 sec)
mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values (1,'Jason',
'Martin', '19960725', '20060725', 1234.56,
Query OK, 1 row affected (0.02 sec)
mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(2,'Alison',
'Mathews', '19760321', '19860221', 6661.78,
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(3,'James',
'Smith',
'19781212', '19900315', 6544.78,
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(4,'Celia',
'Rice',
'19821024', '19990421', 2344.78,
Query OK, 1 row affected (0.00 sec)

mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(5,'Robert',
'Black',
'19840115', '19980808', 2334.78,
Query OK, 1 row affected (0.00 sec)

mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(6,'Linda',
'Green',
'19870730', '19960104', 4322.78,'
Query OK, 1 row affected (0.00 sec)

mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(7,'David',
'Larry',
'19901231', '19980212', 7897.78,'
Query OK, 1 row affected (0.02 sec)

mysql>
mysql> insert into Employee(id,first_name, last_name, start_date, end_Date,
salary,
->
values(8,'James',
'Cat',
'19960917', '20020415', 1232.78,'
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> insert into job (id, title) values (1,'Tester');
Query OK, 1 row affected (0.01 sec)
mysql> insert into job (id, title) values (2,'Accountant');
Query OK, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (3,'Developer');
Query OK, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (4,'Coder');
Query OK, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (5,'Director');
Query OK, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (6,'Mediator');
Query OK, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (7,'Proffessor');
Query OK, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (8,'Programmer');
Query OK, 1 row affected (0.00 sec)
mysql> insert into job (id, title) values (9,'Developer');
Query OK, 1 row affected (0.00 sec)
mysql>
mysql> select * from job;
+------+------------+
| id
| title
|
+------+------------+
|
1 | Tester
|
|
2 | Accountant |
|
3 | Developer |

|
4 | Coder
|
|
5 | Director
|
|
6 | Mediator
|
|
7 | Proffessor |
|
8 | Programmer |
|
9 | Developer |
+------+------------+
9 rows in set (0.00 sec)

mysql> select * from Employee;


+------+------------+-----------+------------+------------+---------+-----------+-----| id
| first_name | last_name | start_date | end_date
| salary | city
| descr
+------+------------+-----------+------------+------------+---------+-----------+-----|
1 | Jason
| Martin
| 1996-07-25 | 2006-07-25 | 1234.56 | Toronto
| Progr
|
2 | Alison
| Mathews
| 1976-03-21 | 1986-02-21 | 6661.78 | Vancouver | Teste
|
3 | James
| Smith
| 1978-12-12 | 1990-03-15 | 6544.78 | Vancouver | Teste
|
4 | Celia
| Rice
| 1982-10-24 | 1999-04-21 | 2344.78 | Vancouver | Manag
|
5 | Robert
| Black
| 1984-01-15 | 1998-08-08 | 2334.78 | Vancouver | Teste
|
6 | Linda
| Green
| 1987-07-30 | 1996-01-04 | 4322.78 | New York | Teste
|
7 | David
| Larry
| 1990-12-31 | 1998-02-12 | 7897.78 | New York | Manag
|
8 | James
| Cat
| 1996-09-17 | 2002-04-15 | 1232.78 | Vancouver | Teste
+------+------------+-----------+------------+------------+---------+-----------+-----8 rows in set (0.00 sec)
mysql>
mysql>
mysql>
mysql> SELECT O.ID from Employee AS O, job AS C
-> WHERE C.ID = O.ID;
+------+
| ID
|
+------+
|
1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
+------+

Você também pode gostar