Подскажите SQL запрос - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II

Lineage II
Дискуссии на тему создания, настройки и обслуживания серверов Lineage 2. При поддержке: Премиум услуги по рекламе

Ответ
Опции темы
Непрочитано 13.10.2012, 17:39   #1
Пользователь

Автор темы (Топик Стартер) Подскажите SQL запрос

Мне нужно сделать "небольшую чистку" в таблице items, но так что бы не навредить имуществу игроков.
Пересмотрел запросы в нэте, которые предназначены для вайпа - ничего толкового на нашел. В общем вопрос таков:

Как можно почистить таблицу items от предметов с определенным item_id, но что бы в условии присутствовало указание category предмета (который принадлежит к таблице etcitem), например recipe, scroll, и так далее.

Другими словами говоря, например нужно почистить items от предметов категории recipe(из табл. etcitem). В таблице items разумеется таких столбцов нет, там есть только ID предмета, который уже принадлежит одному из подразделов (armor/weapon/etcitem).

Никак не могу найти подобных запросов, где была бы ссылка на другую табл, из которой предмет, дабы указать категорию (category), или любой другой столбец..
Спасибо за внимание, буду ждать ответов.
__________________
mego4el вне форума Ответить с цитированием
Непрочитано 13.10.2012, 18:20   #2
Аватар для MrShyr
Эксперт

По умолчанию Re: Подскажите SQL запрос

1. Запросом вывести из таблицы etcitem список id предметов с определенной категорией.
2. Сделать чистку в items по списку полученных выше id.

2 простых запроса и не нужно выдумывать лишнего.
MrShyr вне форума Ответить с цитированием
Непрочитано 13.10.2012, 19:06   #3
Аватар для Dementor
Герой

По умолчанию Re: Подскажите SQL запрос

Цитата:
Сообщение от mego4el Посмотреть сообщение
Как можно почистить таблицу items от предметов с определенным item_id, но что бы в условии присутствовало указание category предмета (который принадлежит к таблице etcitem), например recipe, scroll, и так далее.
PHP код:
DELETE FROM items
LEFT JOIN etcitem ON items
.item_id etcitem.item_id
WHERE etcitem
.category='recipe' AND etcitem.category='scroll' 
на всякий случай сделайте резерв!
Dementor вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 13.10.2012, 19:07   #4
Аватар для bloodshed
Герой

По умолчанию Re: Подскажите SQL запрос

PHP код:
DELETE FROM `itemsWHERE `item_idIN (SELECT `item_idFROM `etcitemWHERE `item_type` = 'recipe'); 
как то так. названия полей могут быть другими, измените под себя.

Цитата:
Сообщение от Неверный Посмотреть сообщение
Код HTML:
DELETE FROM items
LEFT JOIN etcitem ON items.item_id = etcitem.item_id
WHERE etcitem.category='recipe' AND etcitem.category='scroll'
на всякий случай сделайте резерв!
в условиях вроде нужно поставить OR
__________________
bloodshed вне форума Отправить сообщение для bloodshed с помощью ICQ Отправить сообщение для bloodshed с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Непрочитано 13.10.2012, 19:08   #5
Аватар для Dementor
Герой

По умолчанию Re: Подскажите SQL запрос

Цитата:
Сообщение от bloodshed Посмотреть сообщение
PHP код:
DELETE FROM `itemsWHERE `item_idIN (SELECT `item_idFROM `etcitemWHERE `item_type` = 'recipe'); 
как то так. названия полей могут быть другими, измените под себя.
тоже вариант неплохой.
Dementor вне форума Ответить с цитированием
Непрочитано 13.10.2012, 19:42   #6
Пользователь

Автор темы (Топик Стартер) Re: Подскажите SQL запрос

Всем огромное спасибо!!!!!

Еще маленький вопрос по теме:

Как можно выделить диапазон значений, идущий последовательно?
например есть ID:

Код:
1111
1112
1113
1114
что бы не писать каждый раз новый запрос, а сделать диапазон: 1111-1114. Как?
__________________
mego4el вне форума Ответить с цитированием
Непрочитано 13.10.2012, 20:03   #7
Аватар для bloodshed
Герой

По умолчанию Re: Подскажите SQL запрос

PHP код:
DELETE FROM `itemsWHERE `item_idIN (1111,1112,1113,1114); 
__________________
bloodshed вне форума Отправить сообщение для bloodshed с помощью ICQ Отправить сообщение для bloodshed с помощью Skype™ Ответить с цитированием
Сказали спасибо:
Непрочитано 13.10.2012, 20:17   #8
Аватар для Dementor
Герой

По умолчанию Re: Подскажите SQL запрос

Цитата:
Сообщение от bloodshed Посмотреть сообщение
PHP код:
DELETE FROM `itemsWHERE `item_idIN (1111,1112,1113,1114); 
это не диапазон, а перечисление

PHP код:
DELETE FROM items WHERE item_id>=1111 AND item_id<=1114 
Обратите внимание на >= (включительно), т. е. от 1111 включительно до 1114 включительно.
Dementor вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 13.10.2012, 20:41   #9
Пользователь

Автор темы (Топик Стартер) Re: Подскажите SQL запрос

Спасибо) и последнее:

Нужно небольшое условие, где будет выбираться чар из таблицы чарактерс, у которого макс число пвп, и в столбике donator стоит значение 1.
Вот начало:

Код:
SELECT * FROM characters where pvpkills = (select max(pvpkills) from characters
Как дописать правильнo к этому коду выше - AND условие, где будет чтото вроде:

AND where donator = "1";

где donator -INT значение.
Подскажиите плз..
__________________
mego4el вне форума Ответить с цитированием
Непрочитано 13.10.2012, 20:49   #10
Изгнанные

По умолчанию Re: Подскажите SQL запрос

типа так
select max(pvpkills) from characters where donator='1';

выведет число у кого максимум пвп
HJIO вне форума Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
zone_vertices tymboss Lineage II 0 19.03.2010 23:53
(Установка ОФФ Сервера Lineage2) Tonchi Копия официального сервера 2 03.01.2010 13:37
SQL запрос Xrust Lineage II 5 04.08.2009 14:09
Id Wyvern и Sql запрос на дроп HuKoJIaC Работа со скриптами 4 19.12.2008 13:22
Install Microsoft SQL Server 2000 Tonchi Копия официального сервера 0 24.11.2007 00:40


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 12:15. Часовой пояс GMT +3.

Вверх