Кто нибудь объяснит что хотел разработчик - MySQL
Формулировка задачи:
Я не могу понять что эта функция делает (разбираюсь в чужом "движке"), а еще я не понимаю что за прифексы M и S около название полей.... Просто что за бред зачем их так перечислять объясните мнеее
public function Friends_Updates($uid, $lastid, $lastmid, $lastsid) { $moresharequery = ""; if ($lastsid) { $moresharequery = " and S.share_id > '" . $lastsid . "' "; } /* More Button*/ $morequery=""; if($lastid) { //build up the query $morequery=" and M.msg_id<'".$lastid."' "; } if($lastmid) { //build up the query $morequery=" and M.msg_id>'".$lastmid."' "; } $data = null; /*More Button End*/ $v=mysqli_query($this->db,"SELECT share_id FROM message_share") or die(mysqli_error($this->db)); if(mysqli_num_rows($v)) { //The query to select friend messages $query=mysqli_query($this->db,"(SELECT DISTINCT M.msg_id, M.uid_fk, M.shared_uid_fk, M.shared_msg_id_fk, M.last_shared_uid_fk, M.message, M.hide_show_comment, M.hide_show_share, M.postPrivacy, M.lovedPost, M.hashTag, M.share_count, S.created, M.like_count, M.comment_count, U.username, M.uploads, S.uid_fk AS share_uid, S.ouid_fk AS share_ouid FROM messages M JOIN message_share S ON M.msg_id = S.msg_id_fk JOIN friends F ON F.friend_two = S.uid_fk OR S.uid_fk = '$uid' JOIN users U ON S.ouid_fk = U.uid WHERE F.friend_one='$uid' AND U.uid != F.friend_one AND U.status='1' AND F.role='fri' $moresharequery ) UNION (SELECT DISTINCT M.msg_id, M.uid_fk, M.shared_uid_fk, M.shared_msg_id_fk, M.last_shared_uid_fk, M.message, M.hide_show_comment, M.postPrivacy, M.hide_show_share, M.lovedPost, M.hashTag, M.share_count, M.created, M.like_count, M.comment_count, U.username, M.uploads, '0' AS share_uid, '0' AS share_ouid FROM messages M JOIN users U ON M.uid_fk = U.uid JOIN friends F ON M.uid_fk = F.friend_two WHERE F.friend_one='$uid' AND U.status='1' $morequery ) order by created desc limit " .$this->perpage) or die(mysqli_error($this->db)); } else { $query = mysqli_query($this->db,"SELECT DISTINCT M.msg_id, M.uid_fk,M.shared_uid_fk,M.shared_msg_id_fk,M.last_shared_uid_fk, M.message,M.hide_show_comment,M.postPrivacy,M.hide_show_share,M.lovedPost,M.hashTag,M.like_count,M.comment_count, M.created,U.username,M.uploads FROM messages M, users U, friends F WHERE U.status='1' AND M.uid_fk=U.uid AND M.uid_fk = F.friend_two AND F.friend_one='$uid' $morequery order by M.msg_id desc limit " .$this->perpage) or die(mysqli_error($this->db)); } //Store the result while($row=mysqli_fetch_array($query)) { // Store the result into array $data[]=$row; } if(!empty($data)) { // Store the result into array return $data; } }
Решение задачи: «Кто нибудь объяснит что хотел разработчик»
textual
Листинг программы
SELECT T1.id AS Id1, T2.id AS Id2
Объяснение кода листинга программы
T1
- это таблица или представление данных, которое содержит столбецid
.T2
- это таблица или представление данных, которое также содержит столбецid
.Id1
- это псевдоним для столбцаid
из таблицы или представления данныхT1
.Id2
- это псевдоним для столбцаid
из таблицы или представления данныхT2
.- SELECT - это оператор, который используется для выбора данных из одной или нескольких таблиц или представлений.
- AS - это оператор, который используется для создания псевдонима для столбца или выражения в запросе.
- Id1, Id2 - это псевдонимы, которые используются в запросе для обозначения выбранных столбцов.
- В данном случае, запрос выбирает столбцы
id
из таблиц или представленийT1
иT2
. - Запрос возвращает два столбца:
Id1
иId2
, которые являются псевдонимами для столбцовid
из таблиц или представленийT1
иT2
соответственно. - Ваш запрос не содержит оператора
FROM
, поэтому мы не можем точно сказать, откуда берутся данные. Вероятно, это опечатка или пропущенная часть запроса. - Ваш запрос также не содержит оператора
WHERE
, который обычно используется для фильтрации данных. - Ваш запрос возвращает только столбцы
Id1
иId2
, поэтому мы не знаем, какие другие данные могут быть включены в результат. - Ваш запрос не содержит оператора
GROUP BY
илиHAVING
, поэтому мы не можем сказать, как данные будут сгруппированы или отфильтрованы. - Ваш запрос не содержит оператора
ORDER BY
, поэтому мы не можем сказать, как данные будут отсортированы. - Ваш запрос не содержит оператора
LIMIT
, поэтому мы не можем сказать, сколько строк будет возвращено. - Ваш запрос не содержит оператора
INTO
, поэтому мы не знаем, куда будут сохранены результаты. - Ваш запрос не содержит оператора
JOIN
, поэтому мы не можем сказать, как таблицы будут объединены. - Ваш запрос не содержит оператора
SUBQUERY
, поэтому мы не можем сказать, есть ли вложенные запросы. - Ваш запрос не содержит оператора
DISTINCT
, поэтому мы не можем сказать, какие данные будут уникальными. - Ваш запрос не содержит оператора
UNION
, поэтому мы не можем сказать, какие другие запросы могут быть объединены с этим.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д