Как правильно решить задачу?

Ссылка скопирована
1 ответ

Таблица имен пользователей:
name, id
Андрей, id
Сережа, id
Руслан, id

Таблица возрастов пользователей:
возраст, id
18, id
31, id
24, id

Скрипт (с ошибкой)
select *
from names n
left join years y on n.id = y.id
where n.name = 'Андрей'

Задача: составить скрипт так, чтобы в результате получить список всех пользователей с проставленным возрастом для каждого Андрея

Дополнительно:

Ошибку, видимо, нужно угадать, так же, как и используемую СУБД?

Ответы:

select     names.id,     names.name,     ages.age from names left join ages on names.id=ages.id and names.name='Андрей'

select names.id, names.name, ages.age from names left join ages on names.id=ages.id and names.name='Андрей'

Попробуйте так (возможно, что ваша ошибка - это условный ambiguous name и проблема в том, что при выводе в результирующую таблицу у вас попадает поле id, которое есть в двух соединяющихся таблицах):

SELECT      l.name AS name,     l.id AS id,     r.age AS age  FROM      (     SELECT DISTINCT          name, id      FROM          names      WHERE          name = 'Андрей'      ) AS l     LEFT JOIN      ages AS r      ON      l.id = r.id

SELECT l.name AS name, l.id AS id, r.age AS age FROM ( SELECT DISTINCT name, id FROM names WHERE name = 'Андрей' ) AS l LEFT JOIN ages AS r ON l.id = r.id

Нужно решить такую задачу?

Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

Заказать помощь
Лучший ответ
1
Дмитрий К. Ответ

Для решения данной задачи вам необходимо использовать функцию PHP для работы с датами - date(). Эта функция позволяет форматировать дату и время в соответствии с заданным шаблоном.

Прежде всего, вам необходимо получить текущую дату и время с помощью функции date(). Для этого используйте следующий код:

$current_date = date('Y-m-d H:i:s');

$current_date = date('Y-m-d H:i:s');

Этот код сохранит текущую дату и время в переменной $current_date в формате "Год-Месяц-День Час:Минута:Секунда".

Затем вам нужно вычесть из текущей даты и времени нужное количество дней. Например, если вам нужно вычесть 7 дней, используйте следующий код:

$days_to_subtract = 7;
$new_date = date('Y-m-d H:i:s', strtotime("-$days_to_subtract days"));

$days_to_subtract = 7; $new_date = date('Y-m-d H:i:s', strtotime("-$days_to_subtract days"));

Этот код вычтет 7 дней из текущей даты и времени и сохранит результат в переменной $new_date.

Теперь у вас есть новая дата, которая отстоит от текущей на заданное количество дней. Вы можете использовать эту дату в своем приложении по вашему усмотрению.

Надеюсь, данное объяснение поможет вам правильно решить задачу с работой с датами в PHP. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать их. Удачи!

Другие ответы (0)

Пока нет других ответов. Будьте первым, кто поможет автору.

Ответить на вопрос

комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вам также может быть интересно