powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Почему то не работает запрос на удаление одинаковых строк.
10 сообщений из 10, страница 1 из 1
Почему то не работает запрос на удаление одинаковых строк.
    #39621329
Ferum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

Почему то ошибки при запуске запроса...
Взято с сайта http://npk-kaluga.ru/WorkDoubleRec_MSSQL.htm

Код: sql
1.
2.
3.
4.
5.
Delete from t from tovary t, tovary v

where t.tovar = v.tovar

and t.id > v.id



Код: sql
1.
2.
Сообщение 208, уровень 16, состояние 1, строка 1
Недопустимое имя объекта "tovar".



Так же объясните пожалуйста как работает конструкция строки с "Delete from t from tovary t, tovary v"

Так же когда использовал запрос

Код: sql
1.
Select Tovar, Count(*) from Tovary Group by Tovar having Count(*) > 1



Почему то просто "from Tovary" не работает, надо "from [MySampleBase].[dbo].[Tovary]"

Может в этом же проблема и строки "Delete from t from tovary t, tovary v"?
...
Рейтинг: 0 / 0
Почему то не работает запрос на удаление одинаковых строк.
    #39621332
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ferum1,
1.
Код: sql
1.
Delete t from tovary t, tovary v


2. ну и такой синтаксиси как "tovary t, tovary v" "устаревший" и часто ведёт к ошибкам
...
Рейтинг: 0 / 0
Почему то не работает запрос на удаление одинаковых строк.
    #39621335
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПочему то просто "from Tovary" не работает, надо "from [MySampleBase].[dbo].[Tovary]"
вы не в той базе
USE [MySampleBase]
потом можно без базы, схему указывать всегда рекомендуется
...
Рейтинг: 0 / 0
Почему то не работает запрос на удаление одинаковых строк.
    #39621370
Ferum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaKFerum1,
1.
Код: sql
1.
Delete t from tovary t, tovary v


2. ну и такой синтаксиси как "tovary t, tovary v" "устаревший" и часто ведёт к ошибкам

Я не совсем понимаю синтаксис, что означают t и v? Так же ругань на t как недопустимое имя объекта..
...
Рейтинг: 0 / 0
Почему то не работает запрос на удаление одинаковых строк.
    #39621385
Kopelly
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ferum1Я не совсем понимаю синтаксис, что означают t и v? Так же ругань на t как недопустимое имя объекта..
t и v - "алиасы".
Может на данном этапе так будет проще понять:

Код: sql
1.
2.
3.
4.
5.
Delete [Похожий] from tovary [Похожий], tovary [Исходный]

where [Похожий].tovar = [Исходный].tovar

and [Похожий].id > [Исходный].id



Можно расшифровать: удалить из [tovary] (похожий) если есть [tovary] с тем же значением [tovar] и меньшим [id]
...
Рейтинг: 0 / 0
Почему то не работает запрос на удаление одинаковых строк.
    #39621461
Ferum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем, разобрался!
...
Рейтинг: 0 / 0
Почему то не работает запрос на удаление одинаковых строк.
    #39621463
Ferum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще вопрос, есть ли у таблицы уникальный индекс по умолчанию и как к нему обратиться, что бы не создавать специально столбец id?
...
Рейтинг: 0 / 0
Почему то не работает запрос на удаление одинаковых строк.
    #39621513
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ferum1Еще вопрос, есть ли у таблицы уникальный индекс по умолчанию и как к нему обратиться, что бы не создавать специально столбец id?Нет
...
Рейтинг: 0 / 0
Почему то не работает запрос на удаление одинаковых строк.
    #39621549
iap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ferum1,

Код: sql
1.
2.
WITH CTE(N) AS(SELECT ROW_NUMBER()OVER(PARTITION BY tovar ORDER BY id) FROM tovary)
DELETE CTE WHERE N>1;



P.S. Завязывайте с запятой во FROMе!
...
Рейтинг: 0 / 0
Почему то не работает запрос на удаление одинаковых строк.
    #39622387
Ferum1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо коллеги, буду разбираться)
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Почему то не работает запрос на удаление одинаковых строк.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]