Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » [решено] Сравнение ячеек в БД (SQL или access)

Ответить
Настройки темы
[решено] Сравнение ячеек в БД (SQL или access)

Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


Помогите, пожалуйста, с запросом.
Расскажу на примере.
У меня есть таблица: Код, Улица, Этаж, Этажность и Цена. Код уникален. Улица Этаж и Этажность могут быть одинаковыми. Мне надо удалить все строки, в которых Улица Этаж и Этажность одинаковы, а Цена отличается на 300 у.е.( То есть если отличается больше, чем на 300, то удалять не надо. ). Можно ли как -то сравнить эти цены?
Буду очень благодарна за помощь)

Отправлено: 00:59, 27-08-2006

 

Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


sidorova
а строки в таблице пронумерованы?

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 01:24, 27-08-2006 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


Vlad Drakula, да, там уникальный код, который нельзя удалять.

Отправлено: 11:13, 27-08-2006 | #3


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


sidorova
UID это не номер строки... нужен именно номер строки...
если это UID у вас это тоже что и "автоматический индекс" в MySQL то подойдет...
главное наличие номера строки... тогда все просто...

если еще один вопрос:
к примеру:
кв1 = 300$
кв2 = 500$
кв3 = 700$
кв4 = 900$
кские строчки должны исчезнуть?
все кроме первой?


-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 11:25, 27-08-2006 | #4


Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


Vlad Drakula, я не поняла, про номер строки. у меня есть таблица в 30 тыс строк, из которой по разным признакам я удаляю строки. все эти строки были азначалько пронумерованы: 1 - 30919. нумерация стоит отделным столбцом, у меня кодом, и служит для связи, иначе я все потеряю. сейчас уже строки не по порядку.

Цитата:
если еще один вопрос:
к примеру:
кв1 = 300$
кв2 = 500$
кв3 = 700$
кв4 = 900$
кские строчки должны исчезнуть?
все кроме первой?
здесь невозможено понять, что удалять. вот пример таблицы:
Код_____Улица______________Этаж_____Этажность_____Цена
1_______Героев Панфиловцев___2_________3___________ 400
89______Кирпичная____________7_________9____________800
34______Героев Панфиловцев___2_________3___________ 406
55______Алексеевская_________4_________8___________ 308
59______Алексеевская_________6_________8____________307
78______Кирпичная___________ 7_________9____________400

здесь должна удалиться только одна строка, первая.


Отправлено: 12:07, 27-08-2006 | #5


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


sidorova
почему именно первая? почему не третья?

sidorova
Цитата:
Vlad Drakula, я не поняла, про номер строки. у меня есть таблица в 30 тыс строк, из которой по разным признакам я удаляю строки. все эти строки были азначалько пронумерованы: 1 - 30919. нумерация стоит отделным столбцом, у меня кодом, и служит для связи, иначе я все потеряю. сейчас уже строки не по порядку.
в таком случае вполне подойдет...

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 12:17, 27-08-2006 | #6


Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


Vlad Drakula, потому что в первой цена меньше.

Отправлено: 12:20, 27-08-2006 | #7


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


sidorova
Цитата:
Vlad Drakula, потому что в первой цена меньше.
вот про это кстати вы умолчали

я думаю что код будет примерно такой:

delete from table where id in(
select
t2.id
from
table t1, table t2
where
t1.Улица = t2.Улица
and t1.Этаж = t2.Этаж
and t1.Этажность = t2.Этажность
and t1.Цена >= t2.Цена
and t1.Цена - t2.Цена <=300
and t1.id != t2.id
)

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!

Это сообщение посчитали полезным следующие участники:

Отправлено: 12:32, 27-08-2006 | #8


Новый участник


Сообщения: 7
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата:
delete from table where id in(
select
t2.id
from
table t1, table t2
where
t1.Улица = t2.Улица
and t1.Этаж = t2.Этаж
and t1.Этажность = t2.Этажность
and t1.Цена >= t2.Цена
and t1.Цена - t2.Цена <=300
and t1.id != t2.id
)
он мне пишет, что в выражении "t1.Улица = t2.Улица
and t1.Этаж = t2.Этаж
and t1.Этажность = t2.Этажность
and t1.Цена >= t2.Цена
and t1.Цена - t2.Цена <=300
and t1.id != t2.id " пропущен оператор.

Отправлено: 12:51, 27-08-2006 | #9


Ночной странник


Contributor


Сообщения: 4050
Благодарности: 83

Профиль | Сайт | Отправить PM | Цитировать


sidorova
1) я веть слово "Улица" написал просто так... вы должны подставить туда название соответствующего столбца в таблице...
2) я написал SQL который скорее всего работает в оракле, но не факт что у вас он заработает... в MySQL к пимеру он наверное и не заработает...

-------
можно практически все, но просто мы это еще не знаем.
главный враг програмиста это копипастинг
За хорошее сообщение не забываем нажимать ссылочку "Полезное сообщение"!


Отправлено: 12:57, 27-08-2006 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » [решено] Сравнение ячеек в БД (SQL или access)

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Сравнение двух файлов>ветвление "fc" или "diff" dARKest Скриптовые языки администрирования Windows 4 06-07-2009 23:02
MSFT SQL Server - Подскажите что лучше ставить SQL 2000 или SQL 2005 на Server 2003 ForGroin Программирование и базы данных 6 23-03-2008 20:54
MSFT SQL Server - [решено] Перенос данных из Access в SQL Server vadimiron Программирование и базы данных 4 09-12-2007 16:16
Delphi - [решено] Delphi | Проблем с изменяемостью ячеек Madmech Программирование и базы данных 4 15-10-2006 20:47
SQL(ACCESS) поиск XCodeR Программирование и базы данных 4 09-08-2005 09:49




 
Переход