Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: 1 2 [Все]   Вниз
  Печать  
Автор Тема: SQL  (Прочитано 44737 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

SQL
« : 24-05-2008 16:18 » 

В этой теме я буду задавать вопросы, которые будут, косятся SQL.
Вот первый, Удалить книги, в коде которых присутствует цифры 6 или 7 пытался вот так:

1.
Код:
Delete From Books Where Quantity  Like' [dfaf6] or [dfaf7]';
//Удаляет 0 строк
2.
Код:
Delete From Books Where Quantity  Like' 6' or' 7';
//Удаляет все строк

SQL начал заниматься только вчера, Улыбаюсь как правильно указать диапазон.
Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #1 : 24-05-2008 19:44 » 

Для чисел:
Код: (Text)
DELETE FROM Book WHERE Quantity BETWEEN 6 AND 7
или для подстрок:
Код: (Text)
DELETE FROM Book WHERE Quantity LIKE '%6%' OR Quantity LIKE '%7%'
« Последнее редактирование: 24-05-2008 19:46 от dimka » Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #2 : 25-05-2008 14:38 » 

dimka, Спасибо за помощь.
Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #3 : 25-05-2008 16:11 » 

Diskriptor, скажи, а почему у тебя все задания какие-то разрушительные: то форматирование диска, то удаление записей? Улыбаюсь
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #4 : 25-05-2008 20:24 » 

dimka, Просто почему-то у меня не получается именно эти задания
Вот мое Д.З.
По SQL

1.   Вытащить название учебников, которые издавались не издательством 'BHV', и тираж которых >= 3000 экземпляров.
Код:
SELECT Press,Name,Pressrun From books Where  Press <> 'BHV' and (Pressrun>=3000);
2.   Вытащить книги, о дате издания которых ничего не известно.
Код:
SELECT Name,Date  From books Where Date  is null;
3.   Вытащить все книги-новинки, цена которых ниже 30р.
Код:
SELECT  Name, New,Price From books Where Price < 30 and New = true;
4.   Вытащить книги, в названиях которых есть слово Microsoft, но нет слова Windows
Четвертое зделал но корректный запрос сейчас не найду
5.   Вытащить книги, у которых цена одной страницы < 10 копеек.
Не успел
6.   Вытащить книги, в названиях которых присутствует не менее трех цифр.
Код:
SELECT Name From books Where Name Like '*#*#*#*';
7.   Удалить книги, в коде которых присутствует цифры 6 или 7.
Ну и 7 ты показал, как заделать, но он у меня не отработал поскольку я забыл упомянут что я пишу запрос на SQL к базе данных Access 2003
Там синтаксис чуть другой но мне там далше преподовател подсказал
А следующим шагом , будить установка Microsoft SQL Server 2000
Поможети,  :)а то не когда не ставел.
Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #5 : 26-05-2008 05:36 » 

Цитата: Diskriptor
Четвертое зделал но корректный запрос сейчас не найду
Так надо не искать, надо писать Улыбаюсь А для этого надо знать синтаксические конструкции. Всё нужное для запроса ты знаешь, осталось это применить.

Цитата: Diskriptor
Ну и 7 ты показал, как заделать, но он у меня не отработал поскольку я забыл упомянут что я пишу запрос на SQL к базе данных Access 2003
Там синтаксис чуть другой но мне там далше преподовател подсказал
Не рассказывай сказок. Я выдал решение, синтаксис которое поддерживается практически любой реляционной СУБД. Access точно поддерживает. Если оно не работает, значит либо ты неверно сообщил задание, либо твои поля имеют другие названия и типы, нежели ты думал.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #6 : 26-05-2008 08:20 » 

dimka, Зная, что запрос надо писать, просто думал что я сохранил рабочий но его не оказалось ну нечего напишу новы, ну а что касается 7 задания запрос работает вот такой
Код:
DELETE FROM Books WHERE Quantity LIKE '*6*' OR Quantity LIKE '*7*';
То есть у меня поле Books и % заменил на * и все заработало, вот архив попробуй

* BOOKS.rar (53.23 Кб - загружено 793 раз.)
« Последнее редактирование: 26-05-2008 10:49 от Diskriptor » Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #7 : 29-05-2008 11:02 » 

Здравствуйте, я поставил 200 SQLserver, то ест в пуски он появился, Улыбаюсь а вот что дальше делать я не знаю, а хочу следующие, у меня есть по SQL книга, и к ней идет учебная база в виде исходникак в txt фермате как ее скампилит можно, или как это в SQL называется, ну в общем что она работала, расскажите пожалуйста или ссылку дайте где про это можно прочитать заранее спасибо
Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #8 : 29-05-2008 11:27 » 

а что в книжках?
а ты все установил, что тебе предлагали?
например Microsoft Query?

Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #9 : 29-05-2008 15:43 » 

Sla, У меня ест две книге одна по 2005SQL server там описывается все от установка реализация администрирование, но там все по 2005 SQL server а мы учим 200SQL server и только в плане администрирования и чиста язык структурный запросов, у меня ест вторая книга там все расписано только по структурным запросам, но там не описывается установка ни какого server вообще, я все установил, как описывалось по этой ссылки http://muonlineprogs.ucoz.ru/publ/1-1-0-10
Цитата
а ты все установил, что тебе предлагали? например Microsoft Query?
да все, Query Analyzer и это тоже.
« Последнее редактирование: 29-05-2008 15:45 от Diskriptor » Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #10 : 01-06-2008 22:16 » 

Здравствуйте пожалуйста помогите существует таблица Access в формате MDB распашите процедуру импорта это базы из Access в SQL, тесть я делаю следующие действия открываю Enterprise Manager Databases ToolsData Transformation ServicesImport Data Далше открывается окошко Chhose a Data Source в ниспадающем окошки Data Source выбираем Microsoft Access в File name на жимам на кнопочку с тремя точечками и указываем места положение базы которую нам надо ипартироват  далее открывается окно Choose a  destination в поле Destination оставляем по умолчанию Microsoft OLE DB Provider for SQL Server далее открывается окошко Specufy Tabble Copy or Query  глочку оставляем на Copy tables(s) and view(s) the souce databaseдалее  появляется окошко Select Source Tables and Views в этом окошки показывается имя Source – название базы, Destination- формат базы, Transfer –кнопочка с тремя точками далее следующие окно Save, schedule replicate packageГотово в окошки Summary выдает следующий отчет:
Source: Microsoft Access
Using Microsoft Jet 4.0 OLE DB Provider
Location: e:\база шаг\books.mdb

Destination: Microsoft SQL Server
Using Microsoft OLE DB Provider for SQL Server
Location: (local)
Database: master

Tables
books -> [master].[dbo].[books]
импорт прошел успешно захожу в Databases обновляю а базы нет, Здесь была моя ладья... почему?
 
« Последнее редактирование: 01-06-2008 22:18 от Diskriptor » Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #11 : 02-06-2008 07:51 » 

Цитата: Diskriptor
импорт прошел успешно захожу в Databases обновляю а базы нет
Ещё бы, ты куда импорт выполнял?

Цитата: Diskriptor
Destination: Microsoft SQL Server
Using Microsoft OLE DB Provider for SQL Server
Location: (local)
Database: master
Всё же написано. Зачем-то системную базу данных испортил.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #12 : 02-06-2008 09:33 » 

dimka, Поныл я ошибаюсь в том куда импортировать базу при выбери в не спадающем окошки что выбрит вместо Microsoft OLE DB Provider for SQL Server подскажи, в окне Chose a Data Source выбираем что импортировать а в окне Choose a  destination куда импортировать вот тут я и ошибаюсь что в это окне выбрать  я системную базу не хотел импортировать, подкинет силку на хоровую книгу по 200 SQL server, для начинающего

Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #13 : 02-06-2008 11:05 » 

Diskriptor, ты специально не по русски пишешь? Пиши без ошибок пожалуйста!!!
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #14 : 02-06-2008 11:24 » 

Offtopic:

McZim, увы, с ошибками Diskriptor'а здесь на форуме уже смирились, но то есть причины, не здесь их обсуждать. Если интересно то поищи его первые сообщения, тогда поймешь...
Поставлю в угол.
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #15 : 02-06-2008 11:51 » 

McZim, Извините все!
Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #16 : 02-06-2008 14:12 » 

С импортом базы из Access в   SQL разобрался.
Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #17 : 05-06-2008 15:28 » 

SQL Запросы Д.З№2
1.)Вывести все содержимое books:
Код:
Select * From books;
2.)Вывести все новые книги
Код:
Select N,New,Name From books Where New=1;
3.)Вывести все книги по программированию
Код:
Select N,Name,Themes From books where Themes like '%Программирование%';
4.)Вывести все книги кроме книг по программированию
Код:
Select N,Name,Themes From books where Themes not like '%Программирование%';
5.)Выведите все книги в диопозоне страниц от 400 до 600
Код:
SELECT N,Name,Pages FROM books WHERE pages >=400 and pages <=600;
6.)Выведете все книги все книги до30 грн., без мелочи
Код:
where (price-ROUND(price,0,1))=0
   and price<30
7.) Выведите все книги где в название ест 2000
Код:
Select Name From books Where   Name like '%2000%'
8.)Выведите книги, где в названии есть три буквы а, но нет буквы з
Код:
SELECT N,code,Name From books where Name like '%a%a%a%' 
    and   
Name not like '%з%'
9)Выведите все книги где ест слово Microsoft
Код:
SELECT Name From books 
Where   Name like '%Microsoft%'
10.)Выведите все книги, где Microsoft в начали названия
Код:
SELECT Name From books 
Where   Name like '[M][i][c][r][o][s][o][f][t]%'
11) Выведите книги, в названиях которых есть слово Microsoft, но нет слова Windows
Код:
SELECT Name From books 
Where   Name like '%Microsoft%'
    and   
Name not like '%Windows%'
12.) Выведите книги для программистов
Код:
Select N,Name From books where Themes not like '%Программисты%';
13) Выведите книги для администраторов 
Код:
SELECT Name From books Where Name Like '%админ%'
14.) Выведите все самоучители
Код:
SELECT Name From books Where Name Like '%самоуч%'
Все запросы работают Улыбаюсь
« Последнее редактирование: 16-08-2008 19:53 от Diskriptor » Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #18 : 05-06-2008 15:57 » 

ошибка в 7 запросе
я думаю что 14 запрос не есть ответ
в 5-ом  запросе можно рассмотреть конструкцию с between
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #19 : 05-06-2008 17:45 » 

Sla,7 Запрос подправил

14 запрос работает нормально ну можно реализовать вот так
Код:
SELECT Name From books Where Name Like '%самоучитель%' 
в моем случаи на выводе данных из таблице  это не повлияло
Цитата
в 5-ом  запросе можно рассмотреть конструкцию с between

да рассмотрим, но чуть попозже.
« Последнее редактирование: 05-06-2008 18:06 от Diskriptor » Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #20 : 05-06-2008 18:19 » 

Diskriptor, все верно, с 14 запросом, но есть одно!
у тебя есть поля Name и Themes
а о том что это самоучитель, может быть не указано в поле Name.
в частном случае, тебе повезло
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #21 : 05-06-2008 19:34 » 

Sla, Да, согласен очень тонкое замечание. 
Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #22 : 09-06-2008 18:32 » 

я научился импортировать базу из  Access в SQL, но нам не показывали как подцепит балу SQL, ну то ест есть файл books.mdf его надо подкинут в SQL как это заделать
Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #23 : 09-06-2008 19:00 » 

SQL это не база, это язык структурированных запросов, так что ты не мог туда выгрузить Улыбаюсь Я так понимаю тебе нужно в MySQL импортировать базу, тогда так:

Код:
mysql --host=имя_хоста --user=имя_юзера --password=пароль имя_базы < файл_дампа
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #24 : 09-06-2008 19:10 » 

McZim, Diskriptor работает с MS SQL
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
McZim
Команда клуба

ru
Offline Offline
Пол: Мужской
Я странный


WWW
« Ответ #25 : 09-06-2008 19:12 » 

ок, тогда вот тут: http://www.databasejournal.com/features/mssql/article.php/3580216
Записан

The CBO without stats is like a morning without coffee. (c) T.Kyte.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #26 : 09-06-2008 19:14 » 

На данном этапе обучения, ему не нужно знать как устроена файловая система СУБД
Просто, к сожалению преподаватель, читающий курс, человек нахватавшийся каких-то знаний, но не практик Жаль
« Последнее редактирование: 09-06-2008 19:17 от Sla » Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #27 : 09-06-2008 19:16 » 

Нет! ему это не нужно!!!!
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Dimka
Деятель
Команда клуба

ru
Offline Offline
Пол: Мужской

« Ответ #28 : 09-06-2008 19:18 » 

Diskriptor, в Enterprise Manager 2000-го сервера или в студии 2005 сервера в дереве объектов сервера кликнуть на Databases правой кнопкой и выбрать команду Attach. Дальше заполнить диалоговое окошко.
Записан

Программировать - значит понимать (К. Нюгард)
Невывернутое лучше, чем вправленное (М. Аврелий)
Многие готовы скорее умереть, чем подумать (Б. Рассел)
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #29 : 09-06-2008 19:54 » 

dimka, спасибо буду знать.
P.S. я работаю в Enterprise Manager 2000
Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #30 : 09-06-2008 20:00 » 

McZim,В любом случаи  спасибо за силку

Добавлено через 19 дней, 2 часа, 48 минут и 27 секунд:
Здравствуйте, пожалуйста помогите, у меня следующие задание:Вывести все содержимое базы books:

 Исходные данные

Основная таблица books в которой, ест Nное количество столбцов
Следующая таблица ID_Izd в которой ест два столбца ID и Izd
Следующая таблица ID_Themes в которой ест два столбца ID и Themes
Следующая таблица ID_Category в которой ест два столбца ID и Category

Я попробовал вот так:
Код:
Select books.*,ID_Izd.Izd,ID_Themes.Themes,ID_Category.Category
 From books,ID_Izd,ID_Themes,ID_Category
После этого запроса вывелось огромное количество строк которое превышает количество строк в таблице, я  разобрался почему у меня так много записей выводилась это происходило из за того что  в моем запроси я использовал Декартовое произведения, это мне не подходить.
Мне надо чтобы выводилось 72 записи по количеству Category

Select books.*,ID_Izd.Izd,ID_Themes.Themes,ID_Category.Category, Что выводим
 From books,ID_Izd,ID_Themes,ID_Category, откуда выводим
    Where Условие отбора, что напасать тут, что бы Вывилос все содержимое базы books не декартовым произведением я так понимаю что надо в условии отбора(Where) 
Указать что выводит записи которые по ID колонки ID_ Category = все остальные колонки ID , но не знаю как это показать в Where.

« Последнее редактирование: 28-06-2008 22:48 от Diskriptor » Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #31 : 01-07-2008 13:12 » 

Diskriptor, Покажи структуру таблиц и постарайся формулировать задания, так как ставит их преподаватель Жаль
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #32 : 01-07-2008 14:34 » 

Цетирую препада он сказал переделат все 14 запросов с учетом внешних таблиц,  ID_Izd,ID_Themes,ID_Category
перваначалный запрос Select *From books выводится все, тепер мне надо его переделать с учетом внешних таблиц,  ID_Izd,ID_Themes,ID_Category books связана с внешними связами как один books ко многим внешних таблиц,  ID_Izd,ID_Themes,ID_Category

Добавлено через 23 дня, 14 часов, 44 минуты и 57 секунд:
Здравствуйте, у меня такие проблемка мне не достаточно того материала который нам рассказывает препад по SQL, у меня есть книга язык запросов SQL, в ней все очень хорошо все расписывается к этой книги идет исходник учебной базы, но я не знаю как его закомпилить пожалуйста расскажите как это заделать, на 200 SQL Server.
С днем Сис.админаПиво!
Исходник базы

* db_script.zip (2.68 Кб - загружено 1069 раз.)
« Последнее редактирование: 25-07-2008 05:19 от Diskriptor » Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #33 : 28-07-2008 14:41 » 

это точно скрипт подарок сисадминам Улыбаюсь
человек изучает MSSQL - скрипт для Oracle
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #34 : 28-07-2008 17:26 » 

Sla,а в SQL можно ж импортировать данные из Oracle, я там видел, Улыбаюсь но у меня нет Oracle и я в нем не когда не работал,ты мне не мог бы закампилить в Oracle и потом сбросить в асу или на почету Diskriptor@yandey.ru а я его потом импортну в SQL


Добавлено через 15 часов, 14 минут и 59 секунд:
Подскажите где можно почитать, дайте ссылку, где пошагово расписывается резервное копирование MSSQL200 в графическом режиме, а то что то ищу, и не могу найти не как.
« Последнее редактирование: 29-07-2008 08:44 от Diskriptor » Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #35 : 16-08-2008 19:58 » 

SQL Запросы№1


1.Вытащить название учебников, которые издавались не издательством 'BHV', и тираж которых >= 3000 экземпляров.
 
Код:
SELECT Press,Name,Pressrun From books Where  Press <> 'BHV' and (Pressrun>=3000);
2.Вытащить книги, о дате издания которых ничего не известно.
 
Код:
SELECT Name,Date  From books Where Date  is null;

3. Вытащить все книги-новинки, цена которых ниже 30 грн.
 
Код:
SELECT  Name, New,Price From books Where Price < 30 and New = true;
4. Вытащить книги, в названиях которых есть слово Microsoft, но нет слова Windows
 
Код:
Select Name
 From books
  Where Name like'%Microsoft%'
   and   
    Name not like '%Windows%';

5. Вытащить книги, в названиях которых присутствует не менее трех цифр.
 
Код:
SELECT Name From books Where Name Like '*#*#*#*';

6.Удалить книги, в коде которых присутствует цифры 6 или 7.
 
Код:
DELETE FROM Books WHERE Quantity LIKE '*6*' OR Quantity LIKE '*7*';





Добавлено через 21 час, 29 минут и 32 секунды:
SQL Запросы№3

1.)Уменьшить стоимость самоучителей на 15
Код:
Update books 
 Set Price=Price-15
  Where name like '%само%'

2.)Удалить все дешевые книги (<10)
Код:
Delete
 From Books
  Where  price <10

3.)Добавить 5 книг по Дизайну
Код:
Insert into books (N,Code,New,Name,Price,Pages,Format,Date,Pressrun)
 Values(768,677,1,'Inside 3D Studio',100,85,NULL,23.02.2000,6100)
4.)Сделать все старые книги новыми
Код:
Update books 
 Set New=1
  Where  New=0

5.)Увеличить стоимость книг тиражом более 5000 но не издательство Вильямс
Код:
Update books
 Set Price=Price+15
  Where Pressrun >5000   
  and  not
  ID_Izd like'% Вильямс%'
   
   


6.)Поставить сегодня. дату книгам, у которых есть категории.
Код:
Update Books
 Set Data "13.07.2008"
  Where Category not is null



Добавлено через 1 час, 21 минуту и 32 секунды:
SQL Запросы№4
1.)   Вывести количество книг с null значением категории
Код:
Select Count (*) as "Category is null"
 From books
  Where Category is null

2.)   Вывести разнецу между самой дорогой и самой дешевой книгой
2.
Код:
1Select (Max (Price) - Min (Price))
    From books
2.2.
Код:
Select AVG(max(Price)-min(Price)) from books


3.)   Вывести самую толстую книгу по Windows
Код:
Select Max (Pages)as "Pages"
 From books
  Where Category like '%Windows%'

4.)   Вывести среднюю стоимость страницы по локальным сетям
Код:
Select SUM(Price) /sum (Pages)as [Цена одной страницы]
 From books
  Where Category  like '%Локальные сети%'

5.)    Вывести  стоимость книг по программированию при скидки 20%
Код:
SELECT SUM (Price-Price*20/100) AS [ Цена книг по программированию]
 FROM books
  WHERE (Themes LIKE '%Программирование%')

6.)     Вывести  стоимость книг по программированию при надбавки 20%
Код:
SELECT SUM (Price+Price*20/100) AS [ Цена книг по программированию]
 FROM books
  WHERE (Themes LIKE '%Программирование%')



Добавлено через 19 минут и 51 секунду:
SQL Запросы№5
1) Вывести  количество экземпляров книг по: теми, которая дороже 70 и толще 500 страниц.
Код:
select Themes,sum(Pressrun)as [ Pressrun] from books Where price >=70 and Pages>=500  group by Themes; 
2) Средняя стоимость книг  по каждому издательству, а также самую дорогую и дешевую книгу.
Код:
Select min (price) as [Min and Max price ] from  books
   Union
    Select max (price)as [Max] from books
     select Izd,AVG(Price)as [ Price] from books group by Izd
     
3) Вывести временной промежуток межу продажей книг по категориям.
Код:
select Category,abs(max(Date)-min(Date)) from books group by Category


Добавлено через 20 минут и 21 секунду:
Все запросы должны работать корми  3 запроса в 3 домашки, там надо convert даты произвести, как раз сейчас в этом пытаюсь разбираться. 
Пока все с 6той домашкай пока застрел, с INNER JOIN не могу разобраться, когда разберусь, выложу 6 домашку  Я ужас, летящий на крыльях ночи
« Последнее редактирование: 16-08-2008 20:38 от Diskriptor » Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Sla
Модератор

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #36 : 17-08-2008 10:39 » 

1.)Уменьшить стоимость самоучителей на 15
Код:
Update books 
 Set Price=Price+15
  Where name like '%само%'
Ты уверен что уменьшил цену?

Добавлено через 1 минуту и 57 секунд:
2.2.
Код:

Select ABS(max(Price)-min(Price)) from books

А что мкасимальная цена может быть меньше минимальной
Или цены могут быть отрицательными?

Добавлено через 1 минуту и 23 секунды:
3.)   Вывести самую толстую книгу по Windows


Select Max (Pages)as "Pages"
 From books
  Where Category like '%Windows%'

Ту выводишь не самую толстую книгу, а смое большое количество страниц.

Добавлено через 4 минуты и 40 секунд:
4.)   Вывести среднюю стоимость страницы по локальным сетям

Select AVG(Price) /sum (price)as [Цена одной страницы]
 From books
  Where Category  like '%Локальные сети%'


Запрос в корне не верен

Что такое среднее?
что такое сумма цен?

AVG(Price) /sum (price)

есть две книги  по цене 5 и 10
Средняя цена - 7.5
Сумма цен - 15

7.5 / 15 - я не понимаю что єто за коэффициент

Добавлено через 2 минуты и 18 секунд:
3.)Добавить 5 книг по Дизайну


Insert into books (N,Code,New,Name,Price,Pages,Format,Date,Pressrun)
 Values(768,677,1,'Inside 3D Studio',100,85,NULL,23.02.2000,6100)

Добавлена только одна книга

Добавлено через 1 минуту и 45 секунд:
Поставить сегодня. дату книгам, у которых есть категории.

Update Books
 Set Data "13.07.2008"
  Where Category not is null

Думаю что не совсем верно
Нужно использовать какую-нибудь функцию типа CurrentDate

Добавлено через 2 минуты и 33 секунды:
2) Средняя стоимость книг  по каждому издательству, а также самую дорогую и дешевую книгу.
Код:

Select min (price) as [Min and Max price ] from  books
   Union
    Select max (price)as [Max] from books
     select Izd,AVG(Price)as [ Price] from books group by Izd

Неверно, результатом будет два запроса, а не один

Добавлено через 3 минуты и 23 секунды:
Ну... на троечку с минусом, даже с двумя...
Некотрые вопросы не однозначны, и на них даны не однозначные ответы,
чтобы дать правильный ответ - нужно знать структуру таблиц.
« Последнее редактирование: 17-08-2008 10:57 от Sla » Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Diskriptor
Опытный

ua
Offline Offline
Пол: Мужской

« Ответ #37 : 17-08-2008 17:26 » 

Sla, 1.)
Цитата
Ты уверен что уменьшил цену?
Не заметил, скопировал запрос, который написал, и забыл изменить + на -
2.Слава вот задание 2 а 2,1и 2,2 просто показал две реализации
2.) Вывести разницу между самой дорогой и самой дешевой книгой
Код:
Select (max(Price)-min(Price)) from books
3. Вывести самую толстую книгу по Windows
Цитата
Ту выводишь не самую толстую книгу, а смое большое количество страниц.
Справедливое замечание, но под самой толстой книгой подразумевалось в которой самое большое количество страниц, хотя согласен задача сформулирована  не корректно, препад сказал, что запрос правильный.
4.)   Вывести среднюю стоимость страницы по локальным сетям
Цитата
7.5 / 15 - я не понимаю что єто за коэффициент
Код:
Select SUM(Price) /sum (Pages)as [Цена одной страницы]
 From books
  Where Category  like '%Локальные сети%'
5.)Добавить 5 книг по Дизайну
Цитата
Добавлена только одна книга

Препад не требовал, что бы запрос был такой который вставлял пят книг за одно исполнение(F5)я спрашивал у него по этому поводу как можно это дело автоматизировать что бы 5 раз не нажимать F5 он либо не услышал моего вопроса либо про морозился, защитил как правильный запрос.
6.) Поставить сегодня. дату книгам, у которых есть категории.
Цитата
Думаю что не совсем верно
Нужно использовать какую-нибудь функцию типа CurrentDate
Опять же препад не требовал и функцию CurrentDate не показывал мы мало функций изучили всего:
Count
Sum
Min
Max
AVG
И еще одну сейчас не вспомню, математическая какаета
7.Средняя стоимость книг  по каждому издательству, а также самую дорогую и дешевую книгу.
Цитата
Неверно, результатом будет два запроса, а не один
Согласен не правильно, хотел реализовать через Union
Код:
Select izd, min (price) as [Min and Max price ] from  books group by Izd 
   Union
Select izd,max (price)as [Max] from books group by Izd
  union
Select Izd,AVG(Price)as [ Price] from books group by Izd
не получилась опят проблема с Convertтацией, сейчас как раз пытаюсь в ней разобраться,ну не внимательный я Жаль

Все ошибки учту и исправлю в запросах.
 


Добавлено через 9 дней, 15 часов, 15 минут и 8 секунд:
   
SQL Запросы Д.З№6
1,)КНИГИ:

Код:
SELECT Authors.LastName+' '+Authors.FirstName AS АВТОР, Books.Name AS НАЗВАНИЕ, Press.Name AS ИЗДАНИЕ, 
 Categories.Name AS КАТЕГОРИЯ, Books.YearPress AS ГОД
  FROM   Authors INNER JOIN
   Books ON Authors.Id = Books.Id_Author INNER JOIN
    Press ON Books.Id_Press = Press.Id INNER JOIN
     Categories ON Books.Id_Category = Categories.Id


2,)СТУДЕНТЫ:

Код:
SELECT Students.LastName AS ФАМИЛИЯ, Students.FirstName AS ИМЯ, Groups.Name AS ГРУППА, Faculties.Name AS ФАКУЛЬТЕТ
 FROM  Students INNER JOIN
  Groups ON Students.Id_Group = Groups.Id INNER JOIN
   Faculties ON Groups.Id_Faculty =Faculties.Id

3,)ПРЕПОДАВАТЕЛИ:

Код:
SELECT Teachers.LastName AS ФАМИЛИЯ, Teachers.FirstName AS ИМЯ, Departments.Name AS ПРЕДМЕТ
 FROM   Teachers INNER JOIN
  Departments ON Teachers.Id_Dep = Departments.Id


Добавлено через 16 дней, 12 часов, 29 минут и 28 секунд:
Здравствуйте пожалуйста помогите, мы прошли я бы сказал пролетели Здесь была моя ладья... тему
1.Создание новых пользователей
2.Назначение прав и ролей этим пользователям
3.Изменение прав пользователей
4.Вход в базу под  виндовой учеткой и под учеткой SQL
Все это было рассказано за один час, голова кругом идет. Здесь была моя ладья... Пожалуйста, дайте ссылку или название книге где эти моменты расписываются во всех подробностях, тема важная и в ней надо разобраться досконально. 
« Последнее редактирование: 12-09-2008 22:35 от Diskriptor » Записан

Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
Страниц: 1 2 [Все]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines