簡體   English   中英

PHP MySQL查詢-添加更多字段時文檔為空

[英]php mysql query - Document is empty when adding more fields

我有這個運行良好的mysql查詢:

$query = "SELECT
          USER.USER_ID, NAME, SURNAME, EMAIL, STATUS, PHOTO
          FROM FRIENDLIST, USER, USER_PROFILE
          WHERE FRIENDLIST.FRIEND_ID = ANY (
              SELECT FRIEND_ID FROM FRIENDLIST WHERE USER_ID=".$userID."
          )
          AND APPROVED='YES'
          AND USER.USER_ID=FRIENDLIST.FRIEND_ID
          AND USER.USER_ID=USER_PROFILE.USER_ID
          UNION
          SELECT
          USER.USER_ID, NAME, SURNAME, EMAIL, STATUS, PHOTO FROM FRIENDLIST, USER, USER_PROFILE
          WHERE FRIENDLIST.FRIEND_ID = " . $userID . "
          AND APPROVED = 'YES'
          AND USER.USER_ID=FRIENDLIST.USER_ID
          AND USER.USER_ID=USER_PROFILE.USER_ID";

當我在查詢中添加更多字段時,出現“文檔為空”錯誤。

$query = "SELECT
          USER.USER_ID, NAME, SURNAME, EMAIL, STATUS, PHOTO, gender, cposition, rinterest, about
          FROM FRIENDLIST, USER, USER_PROFILE
          WHERE FRIENDLIST.FRIEND_ID = ANY (
              SELECT FRIEND_ID FROM FRIENDLIST WHERE USER_ID=" . $userID . "
          )
          AND APPROVED='YES'
          AND USER.USER_ID=FRIENDLIST.FRIEND_ID
          AND USER.USER_ID=USER_PROFILE.USER_ID
          UNION
          SELECT
          USER.USER_ID, NAME, SURNAME, EMAIL, STATUS, PHOTO
          FROM FRIENDLIST, USER, USER_PROFILE
          WHERE FRIENDLIST.FRIEND_ID = ".$userID."
          AND APPROVED='YES'
          AND USER.USER_ID=FRIENDLIST.USER_ID
          AND USER.USER_ID=USER_PROFILE.USER_ID";

新字段屬於USER_PROFILE表。

您使用的是UNION因此兩個SELECT查詢必須具有完全相同的列數。 否則,您的查詢將失敗,並且可能會產生類似於您看到的錯誤。 該錯誤消息還可能表明未檢查查詢結果是否有錯誤或失敗。

如果代碼格式正確,這將更容易發現。 允許(建議)在SQL查詢中使用Enter。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM