1

PHP プログラムに選択クエリがあります。

SELECT u.name AS name,
    u.email AS email,
    u.status AS status ,
    u.is_blocked AS is_blocked,         
    pm.plan_name AS plan_name,
    upt.amount AS amount,
    upt.payment_status AS payment_status,
    DATE_FORMAT(upt.dt, '%m-%d-%Y')AS payment_date,
    DATE_FORMAT(upt.plan_expiry_date,'%m-%d-%Y') AS exp_dt
FROM users u, user_plan_transaction upt, plan_master pm
WHERE
    u.user_id = upt.user_id
    AND upt.payment_status  IN ('PAID', 'ADMIN_PAID')
    AND upt.dt = (SELECT dt FROM user_plan_transaction WHERE user_id = u.user_id
                  ORDER BY dt DESC
                  LIMIT 1 )
    AND upt.plan_id = pm.plan_id

このクエリから、2 つのデータ セットを抽出する必要があります:
(両方のデータ セットは、以下のように列名です:)

(1) u.name, u.email, u.status, u.is_blocked, pm.plan_name, upt.amount, upt.payment_status, 
DATE_FORMAT(upt.dt, '%m-%d-%Y'),  DATE_FORMAT(upt.plan_expiry_date,'%m-%d-%Y')
(2) name, email, status, is_blocked, plan_name, amount, payment_status, payment_date, exp_dt

mysqli_fetch_field()関数でやってみました。DATE_FORMAT(upt.dt, '%m-%d-%Y')しかし、関数は値を返さずDATE_FORMAT(upt.plan_expiry_date,'%m-%d-%Y')、データセットに

また、後でクエリが変更された場合は、フィールドを再度抽出できるようにしたいと考えています。

例えば。クエリ 2:

SELECT name,
       email,
       status,
       is_blocked
FROM users

次に、2 つのデータセットを次のようにする必要があります。

(1) name, email, status, is_blocked
(2) name, email, status, is_blocked

mysql クエリに対して、これら 2 つのデータセットを抽出する必要があります。

誰でも助けてください。

ありがとう

mysql php ベースのソリューションが見つかりません。この問題を解決するには、正規表現を使用する必要がありますか? 括弧で囲まれていないコンマで preg_split するにはどうすればよいですか。例:

DATE_FORMAT(upt.dt, '%m-%d-%Y')AS payment_date,

"upt.dt" の後にコンマで分割したくありませんが、"payment_date" の後に最後にコンマを入れます。

4

0 に答える 0