Svetlika
06-08-2004 16:49 Что может повлиять на настроение?
Сидела на работе, и настроение вроде было ничего, вполне себе радужное, и музыку печально-грустную не слушала, а как-то незаметно стало грустно, тоскливо и одиноко.

А тут попался запрос. Обыкновенный SQL-запрос. Ну, может не совсем обыкновенный, и вовсе даже не попался - его не было, а надо было составить. И ведь составила, и получился.. и сразу повеселела. Пустячок, а приятно, что получилось.

Техзадание на запрос звучит примерно так:

есть таблица 1: поле1, поле2
есть таблица 2: поле2, поле3
есть таблица 3: поле3, поле4.

(по совпадающим именам полей таблицы связаны)
мне нужно обновить только те записи в таблице 1,
у которых
а) поле2=значение1
AND
б)поле4=значение2


А вот и решение:
UPDATE таблица1 SET поле1=значение
WHERE (поле2 IN (
     SELECT таблица2.поле2 
     FROM таблица2 LEFT OUTER JOIN таблица3 ON таблица2.поле3=таблица3.поле3
     WHERE (таблица2.поле2=значение1) AND (таблица3.поле4=значение2)))


Вдруг да кому пригодится?

Вот теперь интересно - это запрос такой простой или я такая умная, без книжки додумалась сама?

Состояние: креативное
Закрыть