SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 13.09.2009 18:09:25

GliX
Участник
Зарегистрирован: 25.03.2009
Сообщений: 10

Помогите пожалуйста, с запросом

Имеется 2 таблицы: А и В.

В таблице А есть поле "size" с некой величиной. В таблице В есть поле У с некой величиной. Но в обоих таблицах А и В есть поле "topic_id", которое и там и там одинаково.

Вопрос: как сделать следующий запрос - из таблицы А выбираются все строки с величиной "size" большей некоторого значения, берётся значение "topic_id" у каждой из выбранных строк и в таблицу В в соответствующую строку "topic_id" значению величины У присваивается одинаковое число, например 1.

Если более простым языком - есть 2 таблицы (темы и вложения в них). Из первой темы выбираем все строки где размер вложения больше 5 Гб, берём порядковый номер темы и во вторую таблицу в строку соответствующую этой теме (одинаковый порядковый номер) вставляем в определённое поле единицу.

С моими маленькими знаниями мускуля составить смог только выборку всех тем с размером вложения больше 5 Гб. Что делать дальше - ума не приложу. помогите, пожалуйста.

SELECT topic_id FROM `torrents`
WHERE size > '5368709120';

Отредактированно GliX (13.09.2009 18:09:43)

Неактивен

 

#2 13.09.2009 19:50:41

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Помогите пожалуйста, с запросом

http://dev.mysql.com/doc/refman/5.0/en/update.html

update A,B set B.Y=1 where A.topic_id = B.topic_id AND A.size > '5368709120';

Неактивен

 

#3 13.09.2009 21:45:50

GliX
Участник
Зарегистрирован: 25.03.2009
Сообщений: 10

Re: Помогите пожалуйста, с запросом

vasya
Огромное спасибо.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson