Рейтинг темы:
  • 1 Голос(ов) - 1 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Подскажите SQL запрос
#1
Мне нужно сделать "небольшую чистку" в таблице items, но так что бы не навредить имуществу игроков.
Пересмотрел запросы в нэте, которые предназначены для вайпа - ничего толкового на нашел. В общем вопрос таков:

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

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

Никак не могу найти подобных запросов, где была бы ссылка на другую табл, из которой предмет, дабы указать категорию (category), или любой другой столбец..
Спасибо за внимание, буду ждать ответов.Smile
Ответ
#2
1. Запросом вывести из таблицы etcitem список id предметов с определенной категорией.
2. Сделать чистку в items по списку полученных выше id.

2 простых запроса Smile и не нужно выдумывать лишнего.
Ответ
#3
mego4el;235062 Написал:Как можно почистить таблицу items от предметов с определенным item_id, но что бы в условии присутствовало указание category предмета (который принадлежит к таблице etcitem), например recipe, scroll, и так далее.

PHP код:
<?php 
DELETE FROM items
LEFT JOIN etcitem ON items
.item_id = etcitem.item_id
WHERE etcitem
.category='recipe' AND etcitem.category='scroll'

на всякий случай сделайте резерв!
Ответ
#4
PHP код:
<?php 
DELETE FROM
`items` WHERE `item_id` IN (SELECT `item_id` FROM `etcitem` WHERE `item_type` = 'recipe');
как то так. названия полей могут быть другими, измените под себя.

Неверный Написал:DELETE FROM items
LEFT JOIN etcitem ON items.item_id = etcitem.item_id
WHERE etcitem.category='recipe' AND etcitem.category='scroll'


на всякий случай сделайте резерв!
в условиях вроде нужно поставить OR
[Изображение: l2nextgen.gif]
Ответ
#5
bloodshed Написал:
PHP код:
<?php 
DELETE FROM
`items` WHERE `item_id` IN (SELECT `item_id` FROM `etcitem` WHERE `item_type` = 'recipe');
как то так. названия полей могут быть другими, измените под себя.
тоже вариант неплохой. Smile
Ответ
#6
Всем огромное спасибо!!!!!

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

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

Код:
1111
1112
1113
1114

что бы не писать каждый раз новый запрос, а сделать диапазон: 1111-1114. Как?
Ответ
#7
PHP код:
<?php 
DELETE FROM
`items` WHERE `item_id` IN (1111,1112,1113,1114);
[Изображение: l2nextgen.gif]
Ответ
#8
bloodshed Написал:
PHP код:
<?php 
DELETE FROM
`items` WHERE `item_id` IN (1111,1112,1113,1114);

это не диапазон, а перечисление Smile

PHP код:
<?php 
DELETE FROM items WHERE item_id
>=1111 AND item_id<=1114
Обратите внимание на >= (включительно), т. е. от 1111 включительно до 1114 включительно.
Ответ
#9
Спасибо) и последнее:

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

Код:
SELECT * FROM characters where pvpkills = (select max(pvpkills) from characters

Как дописать правильнo к этому коду выше - AND условие, где будет чтото вроде:

AND where donator = "1";

где donator -INT значение.
Подскажиите плз..
Ответ
#10
типа так
select max(pvpkills) from characters where donator='1';

выведет число у кого максимум пвп
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Подскажите по править баги Vavilon 0 1,543 05-08-2020, 07:54 PM
Последний пост: Vavilon
  запрос sql. добавить предмет в дроп мобам по уровню sheg300 2 2,530 06-17-2018, 09:48 PM
Последний пост: PROGRAMMATOR
  Подскажите кто в этом ! knaif 6 3,033 06-22-2017, 03:06 PM
Последний пост: Trimius
  Помогите создать правильный mssql запрос ussyka 2 2,106 09-03-2016, 12:32 AM
Последний пост: Stenly76
  Подскажите как исправить баг Vavilon 8 3,395 03-23-2016, 06:41 PM
Последний пост: Vavilon
  Sql запрос Verizon 4 2,284 02-20-2016, 07:44 PM
Последний пост: PROGRAMMATOR
  Помогите составить правильно SQL запрос itcry 2 1,902 02-05-2016, 01:35 PM
Последний пост: itcry
  Подскажите пожалуйста(Ошибка) Krec 2 1,782 12-05-2015, 04:44 AM
Последний пост: Krec
  подскажите как исправить ошибку oboyma 4 2,192 10-26-2015, 10:07 PM
Последний пост: oboyma
  Подскажите запрос mego4el 9 3,348 09-18-2015, 04:07 PM
Последний пост: Dementor

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)