繁体   English   中英

如何使长的SQL语句在PHP(或其他语言)中看起来很漂亮?

[英]How to make long sql sentence look beautiful in PHP(or other language)?

这是一个例子。 为了看起来舒适,我在其中填充了一些制表符和换行符; 我正在寻找除使用“。”以外的其他更好方法。 链接它们。

$str_sql = "SELECT 
          sc.`id` AS 'payment_id',
          sc.`order_id` AS 'order_id',
          od.`partner_id` AS 'partner_id',
          pt.`partner_name` AS 'partner_name',
          od.`term` AS 'order_terms',
          od.`has_pay` AS 'paid_terms',
          sc.`sort_order` AS 'current_term',
          FROM_UNIXTIME(sc.`repayment_time`) AS 'payment_time',
          FROM_UNIXTIME(sc.`receive_time`) AS 'pay_time',
          sc.`order_price` AS 'term_price',
          od.`add_time` AS 'order_time',
          sc.`status` AS 'status',
          od.`order_price` AS 'order_price',
          usr.`user_name` AS 'user_name',
          usr.`id` AS 'user_id',
          usr.`user_cell` AS 'user_cellphone',
          IF(sc.`status` IN (0,3), 1 , 0 ) AS 'overdue',

        FROM 
          mayidev.`lzh_order_payment_schedule` sc 
          JOIN lzh_order od 
            ON sc.`order_id` = od.`id` 
          JOIN lzh_partners pt 
            ON od.`partner_id` = pt.`id` 
          JOIN lzh_order_user usr 
            ON od.id = usr.order_id 
          JOIN lzh_partner_overdue_interest po 
            ON po.`partner_id` = pt.id 
        WHERE sc.`repayment_time` < 1477441800
        AND sc.`receive_time` = 0
          AND sc.`status` != 1
          AND od.`status` = 4 ;";

使长SQL语句在PHP中看起来漂亮的最佳方法是将SQL代码与PHP代码分开。 最好的方法是在SQL中创建viewstored procedure以获取数据。 您实际上并不需要PHP中的所有JOIN逻辑。 最好将其存储在SQL Server上,以保持代码的可维护性。

在PHP方面,您只需SELECT * FROM viewCALL procedure()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM