これはMySQLデータベースのサインアップテーブルです。ゼロレコードが存在しない場合のみSQLレコードが返されます
SIGNUP
id (int)
customer (int)
helper (int)
eid (int)
..plus more fields
このクエリは、データベースにレコードを戻したい場合は0の結果を返します。状況は、SIGNUPテーブルにcustomer = 11、helper = 0、およびapproved = 0のレコードが1つあります。
ヘルパーフィールドに0以外の数値が設定されている場合はレコードが返されますが、0 0レコードが返されます。 2番目の選択行(v.field1、v.field2などを含む)を取り出すと、それも機能します。問題は、ヘルパー列から引き出すデータがないため、何か他のものを返すことはできませんが、他のフィールドについては返すデータが残っているようです。アイデアを開いて、すべての助けに感謝します!ありがとうございます..
SELECT
u.id cId, u.first cFirst, u.email cEmail, u.username cUsername,
v.id hId, v.first hFirst, v.email hEmail, v.username hUsername,
s.customer, s.helper, s.eid EID, s.approved,
e.name, DATE_FORMAT(e.date, '%W, %b %e %Y %l:%i %p') date, e.summary, e.street, e.city, e.state, e.zip eZip
FROM signup s
INNER JOIN events e ON e.id = s.eid
INNER JOIN users u ON u.id = s.customer
INNER JOIN users v ON v.id = s.helper
WHERE
(s.customer = 11 OR s.helper = 11)
AND e.date > sysdate()
ORDER BY e.date asc
こんにちは、これは正しい参加していますか? INNER JOINイベントe ON IDS.ID = s.eid INNER JOINユーザーu.id = s.customer INNER JOINユーザーv ON v.id = s.helper通常、IDと外部キーでバインドする必要があるためそれぞれ – jam