<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://sqle.ru/index.php?action=history&amp;feed=atom&amp;title=SQL_Server%2FT-SQL_Tutorial%2FTransact_SQL%2FSelect_statement</id>
		<title>SQL Server/T-SQL Tutorial/Transact SQL/Select statement - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://sqle.ru/index.php?action=history&amp;feed=atom&amp;title=SQL_Server%2FT-SQL_Tutorial%2FTransact_SQL%2FSelect_statement"/>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=SQL_Server/T-SQL_Tutorial/Transact_SQL/Select_statement&amp;action=history"/>
		<updated>2026-05-26T10:37:18Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://sqle.ru/index.php?title=SQL_Server/T-SQL_Tutorial/Transact_SQL/Select_statement&amp;diff=6332&amp;oldid=prev</id>
		<title> в 13:46, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=SQL_Server/T-SQL_Tutorial/Transact_SQL/Select_statement&amp;diff=6332&amp;oldid=prev"/>
				<updated>2010-05-26T13:46:16Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 13:46, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://sqle.ru/index.php?title=SQL_Server/T-SQL_Tutorial/Transact_SQL/Select_statement&amp;diff=6333&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://sqle.ru/index.php?title=SQL_Server/T-SQL_Tutorial/Transact_SQL/Select_statement&amp;diff=6333&amp;oldid=prev"/>
				<updated>2010-05-26T10:22:37Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Join tables in a procedure==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
3&amp;gt;&lt;br /&gt;
4&amp;gt;&lt;br /&gt;
5&amp;gt; CREATE TABLE authors(&lt;br /&gt;
6&amp;gt;    au_id          varchar(11),&lt;br /&gt;
7&amp;gt;    au_lname       varchar(40)       NOT NULL,&lt;br /&gt;
8&amp;gt;    au_fname       varchar(20)       NOT NULL,&lt;br /&gt;
9&amp;gt;    phone          char(12)          NOT NULL DEFAULT (&amp;quot;UNKNOWN&amp;quot;),&lt;br /&gt;
10&amp;gt;    address        varchar(40)           NULL,&lt;br /&gt;
11&amp;gt;    city           varchar(20)           NULL,&lt;br /&gt;
12&amp;gt;    state          char(2)               NULL,&lt;br /&gt;
13&amp;gt;    zip            char(5)               NULL,&lt;br /&gt;
14&amp;gt;    contract       bit               NOT NULL&lt;br /&gt;
15&amp;gt; )&lt;br /&gt;
16&amp;gt; GO&lt;br /&gt;
1&amp;gt; insert authors values(&amp;quot;1&amp;quot;,  &amp;quot;Joe&amp;quot;,   &amp;quot;Abra&amp;quot;,   &amp;quot;111 111-1111&amp;quot;, &amp;quot;6 St.&amp;quot;, &amp;quot;Berkeley&amp;quot;,  &amp;quot;CA&amp;quot;, &amp;quot;11111&amp;quot;, 1)&lt;br /&gt;
2&amp;gt; insert authors values(&amp;quot;2&amp;quot;,  &amp;quot;Jack&amp;quot;,  &amp;quot;Majo&amp;quot;,   &amp;quot;222 222-2222&amp;quot;, &amp;quot;3 St.&amp;quot;, &amp;quot;Oakland&amp;quot; ,  &amp;quot;CA&amp;quot;, &amp;quot;22222&amp;quot;, 1)&lt;br /&gt;
3&amp;gt; insert authors values(&amp;quot;3&amp;quot;,  &amp;quot;Pink&amp;quot;,  &amp;quot;Cherry&amp;quot;, &amp;quot;333 333-3333&amp;quot;, &amp;quot;5 Ln.&amp;quot;, &amp;quot;Vancouver&amp;quot;, &amp;quot;BC&amp;quot;, &amp;quot;33333&amp;quot;, 1)&lt;br /&gt;
4&amp;gt; insert authors values(&amp;quot;4&amp;quot;,  &amp;quot;Blue&amp;quot;,  &amp;quot;Albert&amp;quot;, &amp;quot;444 444-4444&amp;quot;, &amp;quot;7 Av.&amp;quot;, &amp;quot;Vancouver&amp;quot;, &amp;quot;BC&amp;quot;, &amp;quot;44444&amp;quot;, 1)&lt;br /&gt;
5&amp;gt; insert authors values(&amp;quot;5&amp;quot;,  &amp;quot;Red&amp;quot;,   &amp;quot;Anne&amp;quot;,   &amp;quot;555 555-5555&amp;quot;, &amp;quot;6 Av.&amp;quot;, &amp;quot;Regina&amp;quot;,    &amp;quot;SK&amp;quot;, &amp;quot;55555&amp;quot;, 1)&lt;br /&gt;
6&amp;gt; insert authors values(&amp;quot;6&amp;quot;,  &amp;quot;Black&amp;quot;, &amp;quot;Michel&amp;quot;, &amp;quot;666 666-6666&amp;quot;, &amp;quot;3 Pl.&amp;quot;, &amp;quot;Regina&amp;quot;,    &amp;quot;SK&amp;quot;, &amp;quot;66666&amp;quot;, 1)&lt;br /&gt;
7&amp;gt; insert authors values(&amp;quot;7&amp;quot;,  &amp;quot;White&amp;quot;, &amp;quot;Sylvia&amp;quot;, &amp;quot;777 777-7777&amp;quot;, &amp;quot;1 Pl.&amp;quot;, &amp;quot;Rockville&amp;quot;, &amp;quot;MD&amp;quot;, &amp;quot;77777&amp;quot;, 1)&lt;br /&gt;
8&amp;gt; insert authors values(&amp;quot;8&amp;quot;,  &amp;quot;Yellow&amp;quot;,&amp;quot;Heather&amp;quot;,&amp;quot;888 888-8888&amp;quot;, &amp;quot;3 Pu&amp;quot;,  &amp;quot;Vacaville&amp;quot;, &amp;quot;CA&amp;quot;, &amp;quot;88888&amp;quot;, 0)&lt;br /&gt;
9&amp;gt; insert authors values(&amp;quot;9&amp;quot;,  &amp;quot;Gold&amp;quot;,  &amp;quot;Dep&amp;quot;,    &amp;quot;999 999-9999&amp;quot;, &amp;quot;5 Av.&amp;quot;, &amp;quot;Oakland&amp;quot;,   &amp;quot;CA&amp;quot;, &amp;quot;99999&amp;quot;, 0)&lt;br /&gt;
10&amp;gt; insert authors values(&amp;quot;10&amp;quot;, &amp;quot;Siler&amp;quot;, &amp;quot;Dean&amp;quot;,   &amp;quot;000 000-0000&amp;quot;, &amp;quot;4 Av.&amp;quot;, &amp;quot;Oakland&amp;quot;,   &amp;quot;CA&amp;quot;, &amp;quot;00000&amp;quot;, 1)&lt;br /&gt;
11&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; CREATE TABLE titles(&lt;br /&gt;
3&amp;gt;    title_id       varchar(20),&lt;br /&gt;
4&amp;gt;    title          varchar(80)       NOT NULL,&lt;br /&gt;
5&amp;gt;    type           char(12)          NOT NULL,&lt;br /&gt;
6&amp;gt;    pub_id         char(4)               NULL,&lt;br /&gt;
7&amp;gt;    price          money                 NULL,&lt;br /&gt;
8&amp;gt;    advance        money                 NULL,&lt;br /&gt;
9&amp;gt;    royalty        int                   NULL,&lt;br /&gt;
10&amp;gt;    ytd_sales      int                   NULL,&lt;br /&gt;
11&amp;gt;    notes          varchar(200)          NULL,&lt;br /&gt;
12&amp;gt;    pubdate        datetime          NOT NULL&lt;br /&gt;
13&amp;gt; )&lt;br /&gt;
14&amp;gt; GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; insert titles values (&amp;quot;1&amp;quot;, &amp;quot;Secrets&amp;quot;,   &amp;quot;popular_comp&amp;quot;, &amp;quot;1389&amp;quot;, $20.00, $8000.00, 10, 4095,&amp;quot;Note 1&amp;quot;,&amp;quot;06/12/94&amp;quot;)&lt;br /&gt;
3&amp;gt; insert titles values (&amp;quot;2&amp;quot;, &amp;quot;The&amp;quot;,       &amp;quot;business&amp;quot;,     &amp;quot;1389&amp;quot;, $19.99, $5000.00, 10, 4095,&amp;quot;Note 2&amp;quot;,&amp;quot;06/12/91&amp;quot;)&lt;br /&gt;
4&amp;gt; insert titles values (&amp;quot;3&amp;quot;, &amp;quot;Emotional&amp;quot;, &amp;quot;psychology&amp;quot;,   &amp;quot;0736&amp;quot;, $7.99,  $4000.00, 10, 3336,&amp;quot;Note 3&amp;quot;,&amp;quot;06/12/91&amp;quot;)&lt;br /&gt;
5&amp;gt; insert titles values (&amp;quot;4&amp;quot;, &amp;quot;Prolonged&amp;quot;, &amp;quot;psychology&amp;quot;,   &amp;quot;0736&amp;quot;, $19.99, $2000.00, 10, 4072,&amp;quot;Note 4&amp;quot;,&amp;quot;06/12/91&amp;quot;)&lt;br /&gt;
6&amp;gt; insert titles values (&amp;quot;5&amp;quot;, &amp;quot;With&amp;quot;,      &amp;quot;business&amp;quot;,     &amp;quot;1389&amp;quot;, $11.95, $5000.00, 10, 3876,&amp;quot;Note 5&amp;quot;,&amp;quot;06/09/91&amp;quot;)&lt;br /&gt;
7&amp;gt; insert titles values (&amp;quot;6&amp;quot;, &amp;quot;Valley&amp;quot;,    &amp;quot;mod_cook&amp;quot;,     &amp;quot;0877&amp;quot;, $19.99, $0.00,    12, 2032,&amp;quot;Note 6&amp;quot;,&amp;quot;06/09/91&amp;quot;)&lt;br /&gt;
8&amp;gt; insert titles values (&amp;quot;7&amp;quot;, &amp;quot;Any?&amp;quot;,      &amp;quot;trad_cook&amp;quot;,    &amp;quot;0877&amp;quot;, $14.99, $8000.00, 10, 4095,&amp;quot;Note 7&amp;quot;,&amp;quot;06/12/91&amp;quot;)&lt;br /&gt;
9&amp;gt; insert titles values (&amp;quot;8&amp;quot;, &amp;quot;Fifty&amp;quot;,     &amp;quot;trad_cook&amp;quot;,    &amp;quot;0877&amp;quot;, $11.95, $4000.00, 14, 1509,&amp;quot;Note 8&amp;quot;,&amp;quot;06/12/91&amp;quot;)&lt;br /&gt;
10&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; CREATE TABLE titleauthor(&lt;br /&gt;
3&amp;gt;    au_id          varchar(20),&lt;br /&gt;
4&amp;gt;    title_id       varchar(20),&lt;br /&gt;
5&amp;gt;    au_ord         tinyint               NULL,&lt;br /&gt;
6&amp;gt;    royaltyper     int                   NULL&lt;br /&gt;
7&amp;gt; )&lt;br /&gt;
8&amp;gt; GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; insert titleauthor values(&amp;quot;1&amp;quot;, &amp;quot;2&amp;quot;, 1, 60)&lt;br /&gt;
3&amp;gt; insert titleauthor values(&amp;quot;2&amp;quot;, &amp;quot;3&amp;quot;, 1, 100)&lt;br /&gt;
4&amp;gt; insert titleauthor values(&amp;quot;3&amp;quot;, &amp;quot;4&amp;quot;, 1, 100)&lt;br /&gt;
5&amp;gt; insert titleauthor values(&amp;quot;4&amp;quot;, &amp;quot;5&amp;quot;, 1, 100)&lt;br /&gt;
6&amp;gt; insert titleauthor values(&amp;quot;5&amp;quot;, &amp;quot;6&amp;quot;, 1, 100)&lt;br /&gt;
7&amp;gt; insert titleauthor values(&amp;quot;6&amp;quot;, &amp;quot;7&amp;quot;, 2, 40)&lt;br /&gt;
8&amp;gt; insert titleauthor values(&amp;quot;7&amp;quot;, &amp;quot;8&amp;quot;, 1, 100)&lt;br /&gt;
9&amp;gt; insert titleauthor values(&amp;quot;8&amp;quot;, &amp;quot;9&amp;quot;, 1, 100)&lt;br /&gt;
10&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;&lt;br /&gt;
3&amp;gt;     CREATE PROC prSelEarningAuthors&lt;br /&gt;
4&amp;gt;     AS&lt;br /&gt;
5&amp;gt;     SELECT     t.title_id,&lt;br /&gt;
6&amp;gt;                a.au_lname,&lt;br /&gt;
7&amp;gt;                a.au_fname,&lt;br /&gt;
8&amp;gt;                advance  =   t.advance * ta.royaltyper/100,&lt;br /&gt;
9&amp;gt;                royalies =   (t.royalty * t.ytd_sales * t.price/100 - t.advance) * ta.royaltyper/100&lt;br /&gt;
10&amp;gt;     FROM       authors      a,&lt;br /&gt;
11&amp;gt;                titleauthor  ta,&lt;br /&gt;
12&amp;gt;                titles       t&lt;br /&gt;
13&amp;gt;     WHERE      ta.title_id =   t.title_id&lt;br /&gt;
14&amp;gt;     AND        a.au_id     =   ta.au_id&lt;br /&gt;
15&amp;gt;     AND        (t.royalty * t.ytd_sales * t.price/100 - t.advance)  * ta.royaltyper/100 &amp;gt; 0&lt;br /&gt;
16&amp;gt;     ORDER BY   t.title_id,&lt;br /&gt;
17&amp;gt;                au_lname,&lt;br /&gt;
18&amp;gt;                au_fname&lt;br /&gt;
19&amp;gt;     GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;&lt;br /&gt;
3&amp;gt;     drop PROC prSelEarningAuthors;&lt;br /&gt;
4&amp;gt;     GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;&lt;br /&gt;
3&amp;gt;     drop table authors;&lt;br /&gt;
4&amp;gt;     drop table titleauthor;&lt;br /&gt;
5&amp;gt;     drop table titles;&lt;br /&gt;
6&amp;gt;     GO&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Optimized procedure to select earning authors.==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
9&amp;gt;&lt;br /&gt;
10&amp;gt; CREATE TABLE authors(&lt;br /&gt;
11&amp;gt;    au_id          varchar(11),&lt;br /&gt;
12&amp;gt;    au_lname       varchar(40)       NOT NULL,&lt;br /&gt;
13&amp;gt;    au_fname       varchar(20)       NOT NULL,&lt;br /&gt;
14&amp;gt;    phone          char(12)          NOT NULL DEFAULT (&amp;quot;UNKNOWN&amp;quot;),&lt;br /&gt;
15&amp;gt;    address        varchar(40)           NULL,&lt;br /&gt;
16&amp;gt;    city           varchar(20)           NULL,&lt;br /&gt;
17&amp;gt;    state          char(2)               NULL,&lt;br /&gt;
18&amp;gt;    zip            char(5)               NULL,&lt;br /&gt;
19&amp;gt;    contract       bit               NOT NULL&lt;br /&gt;
20&amp;gt; )&lt;br /&gt;
21&amp;gt; GO&lt;br /&gt;
1&amp;gt; insert authors values(&amp;quot;1&amp;quot;,  &amp;quot;Joe&amp;quot;,   &amp;quot;Abra&amp;quot;,   &amp;quot;111 111-1111&amp;quot;, &amp;quot;6 St.&amp;quot;, &amp;quot;Berkeley&amp;quot;,  &amp;quot;CA&amp;quot;, &amp;quot;11111&amp;quot;, 1)&lt;br /&gt;
2&amp;gt; insert authors values(&amp;quot;2&amp;quot;,  &amp;quot;Jack&amp;quot;,  &amp;quot;Majo&amp;quot;,   &amp;quot;222 222-2222&amp;quot;, &amp;quot;3 St.&amp;quot;, &amp;quot;Oakland&amp;quot; ,  &amp;quot;CA&amp;quot;, &amp;quot;22222&amp;quot;, 1)&lt;br /&gt;
3&amp;gt; insert authors values(&amp;quot;3&amp;quot;,  &amp;quot;Pink&amp;quot;,  &amp;quot;Cherry&amp;quot;, &amp;quot;333 333-3333&amp;quot;, &amp;quot;5 Ln.&amp;quot;, &amp;quot;Vancouver&amp;quot;, &amp;quot;BC&amp;quot;, &amp;quot;33333&amp;quot;, 1)&lt;br /&gt;
4&amp;gt; insert authors values(&amp;quot;4&amp;quot;,  &amp;quot;Blue&amp;quot;,  &amp;quot;Albert&amp;quot;, &amp;quot;444 444-4444&amp;quot;, &amp;quot;7 Av.&amp;quot;, &amp;quot;Vancouver&amp;quot;, &amp;quot;BC&amp;quot;, &amp;quot;44444&amp;quot;, 1)&lt;br /&gt;
5&amp;gt; insert authors values(&amp;quot;5&amp;quot;,  &amp;quot;Red&amp;quot;,   &amp;quot;Anne&amp;quot;,   &amp;quot;555 555-5555&amp;quot;, &amp;quot;6 Av.&amp;quot;, &amp;quot;Regina&amp;quot;,    &amp;quot;SK&amp;quot;, &amp;quot;55555&amp;quot;, 1)&lt;br /&gt;
6&amp;gt; insert authors values(&amp;quot;6&amp;quot;,  &amp;quot;Black&amp;quot;, &amp;quot;Michel&amp;quot;, &amp;quot;666 666-6666&amp;quot;, &amp;quot;3 Pl.&amp;quot;, &amp;quot;Regina&amp;quot;,    &amp;quot;SK&amp;quot;, &amp;quot;66666&amp;quot;, 1)&lt;br /&gt;
7&amp;gt; insert authors values(&amp;quot;7&amp;quot;,  &amp;quot;White&amp;quot;, &amp;quot;Sylvia&amp;quot;, &amp;quot;777 777-7777&amp;quot;, &amp;quot;1 Pl.&amp;quot;, &amp;quot;Rockville&amp;quot;, &amp;quot;MD&amp;quot;, &amp;quot;77777&amp;quot;, 1)&lt;br /&gt;
8&amp;gt; insert authors values(&amp;quot;8&amp;quot;,  &amp;quot;Yellow&amp;quot;,&amp;quot;Heather&amp;quot;,&amp;quot;888 888-8888&amp;quot;, &amp;quot;3 Pu&amp;quot;,  &amp;quot;Vacaville&amp;quot;, &amp;quot;CA&amp;quot;, &amp;quot;88888&amp;quot;, 0)&lt;br /&gt;
9&amp;gt; insert authors values(&amp;quot;9&amp;quot;,  &amp;quot;Gold&amp;quot;,  &amp;quot;Dep&amp;quot;,    &amp;quot;999 999-9999&amp;quot;, &amp;quot;5 Av.&amp;quot;, &amp;quot;Oakland&amp;quot;,   &amp;quot;CA&amp;quot;, &amp;quot;99999&amp;quot;, 0)&lt;br /&gt;
10&amp;gt; insert authors values(&amp;quot;10&amp;quot;, &amp;quot;Siler&amp;quot;, &amp;quot;Dean&amp;quot;,   &amp;quot;000 000-0000&amp;quot;, &amp;quot;4 Av.&amp;quot;, &amp;quot;Oakland&amp;quot;,   &amp;quot;CA&amp;quot;, &amp;quot;00000&amp;quot;, 1)&lt;br /&gt;
11&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; CREATE TABLE titles(&lt;br /&gt;
3&amp;gt;    title_id       varchar(20),&lt;br /&gt;
4&amp;gt;    title          varchar(80)       NOT NULL,&lt;br /&gt;
5&amp;gt;    type           char(12)          NOT NULL,&lt;br /&gt;
6&amp;gt;    pub_id         char(4)               NULL,&lt;br /&gt;
7&amp;gt;    price          money                 NULL,&lt;br /&gt;
8&amp;gt;    advance        money                 NULL,&lt;br /&gt;
9&amp;gt;    royalty        int                   NULL,&lt;br /&gt;
10&amp;gt;    ytd_sales      int                   NULL,&lt;br /&gt;
11&amp;gt;    notes          varchar(200)          NULL,&lt;br /&gt;
12&amp;gt;    pubdate        datetime          NOT NULL&lt;br /&gt;
13&amp;gt; )&lt;br /&gt;
14&amp;gt; GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; insert titles values (&amp;quot;1&amp;quot;, &amp;quot;Secrets&amp;quot;,   &amp;quot;popular_comp&amp;quot;, &amp;quot;1389&amp;quot;, $20.00, $8000.00, 10, 4095,&amp;quot;Note 1&amp;quot;,&amp;quot;06/12/94&amp;quot;)&lt;br /&gt;
3&amp;gt; insert titles values (&amp;quot;2&amp;quot;, &amp;quot;The&amp;quot;,       &amp;quot;business&amp;quot;,     &amp;quot;1389&amp;quot;, $19.99, $5000.00, 10, 4095,&amp;quot;Note 2&amp;quot;,&amp;quot;06/12/91&amp;quot;)&lt;br /&gt;
4&amp;gt; insert titles values (&amp;quot;3&amp;quot;, &amp;quot;Emotional&amp;quot;, &amp;quot;psychology&amp;quot;,   &amp;quot;0736&amp;quot;, $7.99,  $4000.00, 10, 3336,&amp;quot;Note 3&amp;quot;,&amp;quot;06/12/91&amp;quot;)&lt;br /&gt;
5&amp;gt; insert titles values (&amp;quot;4&amp;quot;, &amp;quot;Prolonged&amp;quot;, &amp;quot;psychology&amp;quot;,   &amp;quot;0736&amp;quot;, $19.99, $2000.00, 10, 4072,&amp;quot;Note 4&amp;quot;,&amp;quot;06/12/91&amp;quot;)&lt;br /&gt;
6&amp;gt; insert titles values (&amp;quot;5&amp;quot;, &amp;quot;With&amp;quot;,      &amp;quot;business&amp;quot;,     &amp;quot;1389&amp;quot;, $11.95, $5000.00, 10, 3876,&amp;quot;Note 5&amp;quot;,&amp;quot;06/09/91&amp;quot;)&lt;br /&gt;
7&amp;gt; insert titles values (&amp;quot;6&amp;quot;, &amp;quot;Valley&amp;quot;,    &amp;quot;mod_cook&amp;quot;,     &amp;quot;0877&amp;quot;, $19.99, $0.00,    12, 2032,&amp;quot;Note 6&amp;quot;,&amp;quot;06/09/91&amp;quot;)&lt;br /&gt;
8&amp;gt; insert titles values (&amp;quot;7&amp;quot;, &amp;quot;Any?&amp;quot;,      &amp;quot;trad_cook&amp;quot;,    &amp;quot;0877&amp;quot;, $14.99, $8000.00, 10, 4095,&amp;quot;Note 7&amp;quot;,&amp;quot;06/12/91&amp;quot;)&lt;br /&gt;
9&amp;gt; insert titles values (&amp;quot;8&amp;quot;, &amp;quot;Fifty&amp;quot;,     &amp;quot;trad_cook&amp;quot;,    &amp;quot;0877&amp;quot;, $11.95, $4000.00, 14, 1509,&amp;quot;Note 8&amp;quot;,&amp;quot;06/12/91&amp;quot;)&lt;br /&gt;
10&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; CREATE TABLE titleauthor(&lt;br /&gt;
3&amp;gt;    au_id          varchar(20),&lt;br /&gt;
4&amp;gt;    title_id       varchar(20),&lt;br /&gt;
5&amp;gt;    au_ord         tinyint               NULL,&lt;br /&gt;
6&amp;gt;    royaltyper     int                   NULL&lt;br /&gt;
7&amp;gt; )&lt;br /&gt;
8&amp;gt; GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; insert titleauthor values(&amp;quot;1&amp;quot;, &amp;quot;2&amp;quot;, 1, 60)&lt;br /&gt;
3&amp;gt; insert titleauthor values(&amp;quot;2&amp;quot;, &amp;quot;3&amp;quot;, 1, 100)&lt;br /&gt;
4&amp;gt; insert titleauthor values(&amp;quot;3&amp;quot;, &amp;quot;4&amp;quot;, 1, 100)&lt;br /&gt;
5&amp;gt; insert titleauthor values(&amp;quot;4&amp;quot;, &amp;quot;5&amp;quot;, 1, 100)&lt;br /&gt;
6&amp;gt; insert titleauthor values(&amp;quot;5&amp;quot;, &amp;quot;6&amp;quot;, 1, 100)&lt;br /&gt;
7&amp;gt; insert titleauthor values(&amp;quot;6&amp;quot;, &amp;quot;7&amp;quot;, 2, 40)&lt;br /&gt;
8&amp;gt; insert titleauthor values(&amp;quot;7&amp;quot;, &amp;quot;8&amp;quot;, 1, 100)&lt;br /&gt;
9&amp;gt; insert titleauthor values(&amp;quot;8&amp;quot;, &amp;quot;9&amp;quot;, 1, 100)&lt;br /&gt;
10&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;     CREATE PROC prSelEarningAuthors&lt;br /&gt;
3&amp;gt;     AS&lt;br /&gt;
4&amp;gt;     SELECT t.title_id, a.au_lname, a.au_fname,&lt;br /&gt;
5&amp;gt;            advance = t.advance * ta.royaltyper/100,&lt;br /&gt;
6&amp;gt;            royalies = (t.royalty * t.ytd_sales * t.price/100 - t.advance) *&lt;br /&gt;
7&amp;gt;         ta.royaltyper/100&lt;br /&gt;
8&amp;gt;     FROM authors a, titleauthor ta, titles t&lt;br /&gt;
9&amp;gt;     WHERE ta.title_id = t.title_id&lt;br /&gt;
10&amp;gt;     AND a.au_id   = ta.au_id&lt;br /&gt;
11&amp;gt;     AND (t.royalty * t.ytd_sales * t.price/100 - t.advance) * ta.royaltyper/100 &amp;gt; 0&lt;br /&gt;
12&amp;gt;     ORDER BY t.title_id, au_lname, au_fname&lt;br /&gt;
13&amp;gt;     GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;     drop PROC prSelEarningAuthors;&lt;br /&gt;
3&amp;gt;     GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;     drop table authors;&lt;br /&gt;
3&amp;gt;     drop table titleauthor;&lt;br /&gt;
4&amp;gt;     drop table titles;&lt;br /&gt;
5&amp;gt;     GO&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== remove data based upon criteria specified through arguments.==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
7&amp;gt;&lt;br /&gt;
8&amp;gt;&lt;br /&gt;
9&amp;gt; CREATE TABLE stores(&lt;br /&gt;
10&amp;gt;    stor_id        char(4)           NOT NULL,&lt;br /&gt;
11&amp;gt;    stor_name      varchar(40)           NULL,&lt;br /&gt;
12&amp;gt;    stor_address   varchar(40)           NULL,&lt;br /&gt;
13&amp;gt;    city           varchar(20)           NULL,&lt;br /&gt;
14&amp;gt;    state          char(2)               NULL,&lt;br /&gt;
15&amp;gt;    zip            char(5)               NULL&lt;br /&gt;
16&amp;gt; )&lt;br /&gt;
17&amp;gt; GO&lt;br /&gt;
1&amp;gt; insert stores values(&amp;quot;1&amp;quot;,&amp;quot;B&amp;quot;,&amp;quot;567 Ave.&amp;quot;,&amp;quot;Tustin&amp;quot;,   &amp;quot;CA&amp;quot;,&amp;quot;92789&amp;quot;)&lt;br /&gt;
2&amp;gt; insert stores values(&amp;quot;2&amp;quot;,&amp;quot;N&amp;quot;,&amp;quot;577 St.&amp;quot;, &amp;quot;Los Gatos&amp;quot;,&amp;quot;CA&amp;quot;,&amp;quot;96745&amp;quot;)&lt;br /&gt;
3&amp;gt; insert stores values(&amp;quot;3&amp;quot;,&amp;quot;T&amp;quot;,&amp;quot;679 St.&amp;quot;, &amp;quot;Portland&amp;quot;, &amp;quot;OR&amp;quot;,&amp;quot;89076&amp;quot;)&lt;br /&gt;
4&amp;gt; insert stores values(&amp;quot;4&amp;quot;,&amp;quot;F&amp;quot;,&amp;quot;89  St.&amp;quot;, &amp;quot;Fremont&amp;quot;,  &amp;quot;CA&amp;quot;,&amp;quot;90019&amp;quot;)&lt;br /&gt;
5&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;&lt;br /&gt;
3&amp;gt;     CREATE PROCEDURE prDeleteData    @chvTable VARCHAR(30),&lt;br /&gt;
4&amp;gt;                                       @chvWhereField VARCHAR(30) = NULL,&lt;br /&gt;
5&amp;gt;                                       @chvWhereFieldDataType VARCHAR(30) = &amp;quot;CHAR&amp;quot;,&lt;br /&gt;
6&amp;gt;                                       @chvOperator VARCHAR(2) = &amp;quot;=&amp;quot;,&lt;br /&gt;
7&amp;gt;                                       @chvValue VARCHAR(30) = NULL&lt;br /&gt;
8&amp;gt;     AS&lt;br /&gt;
9&amp;gt;     DECLARE @chvSQL VARCHAR(255), @chvQuotes CHAR(1)&lt;br /&gt;
10&amp;gt;     SELECT @chvSQL = &amp;quot;DELETE &amp;quot; + @chvTable&lt;br /&gt;
11&amp;gt;     IF NOT @chvWhereField IS NULL&lt;br /&gt;
12&amp;gt;             BEGIN&lt;br /&gt;
13&amp;gt;               SELECT @chvSQL = @chvSQL + &amp;quot; WHERE &amp;quot; + @chvWhereField + &amp;quot; &amp;quot; + @chvOperator + &amp;quot; &amp;quot;&lt;br /&gt;
14&amp;gt;               SELECT @chvWhereFieldDataType = LOWER(RTRIM(@chvWhereFieldDataType))&lt;br /&gt;
15&amp;gt;               SELECT @chvQuotes = CASE @chvWhereFieldDataType&lt;br /&gt;
16&amp;gt;                      WHEN &amp;quot;char&amp;quot; THEN &amp;quot;y&amp;quot;&lt;br /&gt;
17&amp;gt;                      WHEN &amp;quot;datetime&amp;quot; THEN &amp;quot;y&amp;quot;&lt;br /&gt;
18&amp;gt;                      WHEN &amp;quot;datetimn&amp;quot; THEN &amp;quot;y&amp;quot;&lt;br /&gt;
19&amp;gt;                      WHEN &amp;quot;smalldatetime&amp;quot; THEN &amp;quot;y&amp;quot;&lt;br /&gt;
20&amp;gt;                      WHEN &amp;quot;text&amp;quot; THEN &amp;quot;y&amp;quot;&lt;br /&gt;
21&amp;gt;                      WHEN &amp;quot;varchar&amp;quot; THEN &amp;quot;y&amp;quot;&lt;br /&gt;
22&amp;gt;                      ELSE &amp;quot;n&amp;quot;&lt;br /&gt;
23&amp;gt;               END&lt;br /&gt;
24&amp;gt;               IF @chvQuotes = &amp;quot;y&amp;quot;&lt;br /&gt;
25&amp;gt;                      SELECT @chvSQL = @chvSQL + &amp;quot;&amp;quot;&amp;quot;&amp;quot; + @chvValue + &amp;quot;&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
26&amp;gt;               ELSE&lt;br /&gt;
27&amp;gt;                      SELECT @chvSQL = @chvSQL + @chvValue&lt;br /&gt;
28&amp;gt;            END&lt;br /&gt;
29&amp;gt;     EXEC (@chvSQL)&lt;br /&gt;
30&amp;gt;     GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;&lt;br /&gt;
3&amp;gt;     EXEC prDeleteData     @chvTable = &amp;quot;stores&amp;quot;,&lt;br /&gt;
4&amp;gt;             @chvWhereField = &amp;quot;stor_name&amp;quot;,&lt;br /&gt;
5&amp;gt;             @chvWhereFieldDataType = &amp;quot;CHAR&amp;quot;,&lt;br /&gt;
6&amp;gt;             @chvOperator = &amp;quot;=&amp;quot;,&lt;br /&gt;
7&amp;gt;             @chvValue = &amp;quot;News &amp;amp; Brews&amp;quot;&lt;br /&gt;
8&amp;gt;     GO&lt;br /&gt;
(0 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;&lt;br /&gt;
3&amp;gt;     drop PROCEDURE prDeleteData;&lt;br /&gt;
4&amp;gt;     GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; drop table stores;&lt;br /&gt;
3&amp;gt; GO&amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
== Stored Procedure to Retrieve a Customer&amp;quot;s Most Recent Order==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
4&amp;gt;  CREATE TABLE employee(&lt;br /&gt;
5&amp;gt;     id          INTEGER NOT NULL PRIMARY KEY,&lt;br /&gt;
6&amp;gt;     first_name  VARCHAR(10),&lt;br /&gt;
7&amp;gt;     last_name   VARCHAR(10),&lt;br /&gt;
8&amp;gt;     salary      DECIMAL(10,2),&lt;br /&gt;
9&amp;gt;     start_Date  DATETIME,&lt;br /&gt;
10&amp;gt;     region      VARCHAR(10),&lt;br /&gt;
11&amp;gt;     city        VARCHAR(20),&lt;br /&gt;
12&amp;gt;     managerid   INTEGER&lt;br /&gt;
13&amp;gt;  );&lt;br /&gt;
14&amp;gt;  GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; INSERT INTO employee VALUES (1, &amp;quot;Jason&amp;quot; ,  &amp;quot;Martin&amp;quot;, 5890,&amp;quot;2005-03-22&amp;quot;,&amp;quot;North&amp;quot;,&amp;quot;Vancouver&amp;quot;,3);&lt;br /&gt;
3&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt; INSERT INTO employee VALUES (2, &amp;quot;Alison&amp;quot;,  &amp;quot;Mathews&amp;quot;,4789,&amp;quot;2003-07-21&amp;quot;,&amp;quot;South&amp;quot;,&amp;quot;Utown&amp;quot;,4);&lt;br /&gt;
2&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt; INSERT INTO employee VALUES (3, &amp;quot;James&amp;quot; ,  &amp;quot;Smith&amp;quot;,  6678,&amp;quot;2001-12-01&amp;quot;,&amp;quot;North&amp;quot;,&amp;quot;Paris&amp;quot;,5);&lt;br /&gt;
2&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt; INSERT INTO employee VALUES (4, &amp;quot;Celia&amp;quot; ,  &amp;quot;Rice&amp;quot;,   5567,&amp;quot;2006-03-03&amp;quot;,&amp;quot;South&amp;quot;,&amp;quot;London&amp;quot;,6);&lt;br /&gt;
2&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt; INSERT INTO employee VALUES (5, &amp;quot;Robert&amp;quot;,  &amp;quot;Black&amp;quot;,  4467,&amp;quot;2004-07-02&amp;quot;,&amp;quot;East&amp;quot;,&amp;quot;Newton&amp;quot;,7);&lt;br /&gt;
2&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt; INSERT INTO employee VALUES (6, &amp;quot;Linda&amp;quot; ,  &amp;quot;Green&amp;quot; , 6456,&amp;quot;2002-05-19&amp;quot;,&amp;quot;East&amp;quot;,&amp;quot;Calgary&amp;quot;,8);&lt;br /&gt;
2&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt; INSERT INTO employee VALUES (7, &amp;quot;David&amp;quot; ,  &amp;quot;Larry&amp;quot;,  5345,&amp;quot;2008-03-18&amp;quot;,&amp;quot;West&amp;quot;,&amp;quot;New York&amp;quot;,9);&lt;br /&gt;
2&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt; INSERT INTO employee VALUES (8, &amp;quot;James&amp;quot; ,  &amp;quot;Cat&amp;quot;,    4234,&amp;quot;2007-07-17&amp;quot;,&amp;quot;West&amp;quot;,&amp;quot;Regina&amp;quot;,9);&lt;br /&gt;
2&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt; INSERT INTO employee VALUES (9, &amp;quot;Joan&amp;quot;  ,  &amp;quot;Act&amp;quot;,    6123,&amp;quot;2001-04-16&amp;quot;,&amp;quot;North&amp;quot;,&amp;quot;Toronto&amp;quot;,10);&lt;br /&gt;
2&amp;gt; GO&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; select * from employee;&lt;br /&gt;
3&amp;gt; GO&lt;br /&gt;
id          first_name last_name  salary       start_Date              region     city                 managerid&lt;br /&gt;
----------- ---------- ---------- ------------ ----------------------- ---------- -------------------- -----------&lt;br /&gt;
          1 Jason      Martin          5890.00 2005-03-22 00:00:00.000 North      Vancouver                      3&lt;br /&gt;
          2 Alison     Mathews         4789.00 2003-07-21 00:00:00.000 South      Utown                          4&lt;br /&gt;
          3 James      Smith           6678.00 2001-12-01 00:00:00.000 North      Paris                          5&lt;br /&gt;
          4 Celia      Rice            5567.00 2006-03-03 00:00:00.000 South      London                         6&lt;br /&gt;
          5 Robert     Black           4467.00 2004-07-02 00:00:00.000 East       Newton                         7&lt;br /&gt;
          6 Linda      Green           6456.00 2002-05-19 00:00:00.000 East       Calgary                        8&lt;br /&gt;
          7 David      Larry           5345.00 2008-03-18 00:00:00.000 West       New York                       9&lt;br /&gt;
          8 James      Cat             4234.00 2007-07-17 00:00:00.000 West       Regina                         9&lt;br /&gt;
          9 Joan       Act             6123.00 2001-04-16 00:00:00.000 North      Toronto                       10&lt;br /&gt;
(9 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;&lt;br /&gt;
3&amp;gt;&lt;br /&gt;
4&amp;gt; CREATE PROC MyProc&lt;br /&gt;
5&amp;gt; (&lt;br /&gt;
6&amp;gt;   @ID nchar (5)&lt;br /&gt;
7&amp;gt; )&lt;br /&gt;
8&amp;gt; AS&lt;br /&gt;
9&amp;gt; SELECT TOP 1&lt;br /&gt;
10&amp;gt;    *&lt;br /&gt;
11&amp;gt;  FROM&lt;br /&gt;
12&amp;gt;    Employee&lt;br /&gt;
13&amp;gt;  WHERE&lt;br /&gt;
14&amp;gt;      ID = @ID&lt;br /&gt;
15&amp;gt;  ORDER BY&lt;br /&gt;
16&amp;gt;    Start_Date DESC&lt;br /&gt;
17&amp;gt;  GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;&lt;br /&gt;
3&amp;gt; exec MyProc &amp;quot;1&amp;quot;&lt;br /&gt;
4&amp;gt; GO&lt;br /&gt;
id          first_name last_name  salary       start_Date              region     city                 managerid&lt;br /&gt;
----------- ---------- ---------- ------------ ----------------------- ---------- -------------------- -----------&lt;br /&gt;
          1 Jason      Martin          5890.00 2005-03-22 00:00:00.000 North      Vancouver                      3&lt;br /&gt;
(1 rows affected)&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt; drop procedure MyProc&lt;br /&gt;
3&amp;gt; GO&lt;br /&gt;
1&amp;gt;&lt;br /&gt;
2&amp;gt;&lt;br /&gt;
3&amp;gt; drop table employee;&lt;br /&gt;
4&amp;gt; GO&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>