[請益] PHP 中SQL寫法?

看板PHP作者 (拿出我的駭客靈魂)時間6年前 (2019/01/15 08:15), 編輯推噓6(6028)
留言34則, 14人參與, 5年前最新討論串1/1
近日跟同事討論SQL在PHP內的呈現方式 有一種比較隨意 $sql = " select * from table "; 有一種也滿常看到的... $sql = "select *"; $sql.= "from table"; 請問有甚麼優劣之分嗎?? 感恩回答 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.216.69.234 ※ 文章網址: https://www.ptt.cc/bbs/PHP/M.1547511328.A.436.html

01/15 10:28, 6年前 , 1F
應該還有一種 $sql = "夭..壽..長..的..SQL";
01/15 10:28, 1F

01/15 12:28, 6年前 , 2F
熟手應該可以放心用多行的引號了 不熟就不要用
01/15 12:28, 2F

01/15 12:29, 6年前 , 3F
多行引號沒有什麼不好 缺點是如果不小心亂按又沒有用
01/15 12:29, 3F

01/15 12:30, 6年前 , 4F
版控工具幫你找code差在哪裡 可能會不小心亂打些有的
01/15 12:30, 4F

01/15 12:30, 6年前 , 5F
沒的到SQL某一列後面 而自己無法發覺
01/15 12:30, 5F

01/15 12:31, 6年前 , 6F
拆成多行 起碼亂打在尾巴的通常php可以抓出來
01/15 12:31, 6F

01/15 12:32, 6年前 , 7F
不過插到中間的一樣抓不到
01/15 12:32, 7F

01/15 15:17, 6年前 , 8F
換行要注意在關鍵字之間的空白,比如from的前後要空白
01/15 15:17, 8F

01/15 17:29, 6年前 , 9F
差不多一樣慘,看一下 CodeIgniter 的 Query Builder 吧
01/15 17:29, 9F

01/15 17:59, 6年前 , 10F
偶爾也是會用到沒有query builder好用。
01/15 17:59, 10F

01/15 18:00, 6年前 , 11F
而且CI的query builder到底什麼時候才要支援括號
01/15 18:00, 11F

01/15 23:42, 6年前 , 12F
都是垃圾
01/15 23:42, 12F

01/16 02:32, 6年前 , 13F
通常喜歡夭壽長,但是超出我的 Wrap 就會手動斷行
01/16 02:32, 13F

01/16 14:13, 6年前 , 14F
怎沒人推 $heredoc = <<<__UGLY_SQL_STATEMENT__
01/16 14:13, 14F

01/16 14:13, 6年前 , 15F
SELECT .....
01/16 14:13, 15F

01/16 14:14, 6年前 , 16F
FROM ...
01/16 14:14, 16F

01/16 14:14, 6年前 , 17F
LEFT JOIN ...
01/16 14:14, 17F

01/16 14:14, 6年前 , 18F
LEFT JOIN ...
01/16 14:14, 18F

01/16 14:14, 6年前 , 19F
WHERE ....
01/16 14:14, 19F

01/16 14:14, 6年前 , 20F
GROUP BY ...
01/16 14:14, 20F

01/16 14:14, 6年前 , 21F
ORDER BY ...
01/16 14:14, 21F

01/16 14:14, 6年前 , 22F
__UGLY_SQL_STATEMENT__;
01/16 14:14, 22F

01/16 21:08, 6年前 , 23F
樓上的不就navicat自動產出的樣子嗎
01/16 21:08, 23F

01/17 08:23, 6年前 , 24F
我有個同事喜歡把SQL語法獨立在文字檔作樣版
01/17 08:23, 24F

01/17 08:24, 6年前 , 25F
最後流量一大,IO就炸了 lol
01/17 08:24, 25F

01/17 08:32, 6年前 , 26F
這寫法大家都還滿喜歡的,照SA文件幾之幾對照語法
01/17 08:32, 26F

01/17 08:33, 6年前 , 27F
後來小改就解決了:)
01/17 08:33, 27F

01/17 19:20, 6年前 , 28F
之前我幹過select from where order by group by having
01/17 19:20, 28F

01/17 19:20, 6年前 , 29F
全部拆開來寫 然後最後用$sql = $select . $from .
01/17 19:20, 29F

01/17 19:21, 6年前 , 30F
$where .....;
01/17 19:21, 30F

01/18 21:23, 6年前 , 31F
遇過 4 KB 的 SQL 覺得都還好 XD
01/18 21:23, 31F

01/19 09:10, 6年前 , 32F
直接用ORM漂過...
01/19 09:10, 32F

02/17 10:30, 5年前 , 33F
寫長一點讓同事無法一看就懂也是一種樂趣
02/17 10:30, 33F

09/28 20:43, 5年前 , 34F
看用途吧,有些時候你會有固定的SQL,但會因為不同條件加
09/28 20:43, 34F
文章代碼(AID): #1SFIOWGs (PHP)
文章代碼(AID): #1SFIOWGs (PHP)