之前使用PHP+Mysql寫程式,都會用order by rand();的sql指令來隨機取得顯示的資料。
最近有一些事,學習CodeIgnit停了好一陣子,沒有再仔細研究CodeIgniter,但是這個問題我一直放在心裡。
今天看了一下,官方文件,看來Active Record是不支援order by rand();這樣隨機取得資料的方式。
因為CodeIgniter支援多種資料庫,其中Oracle和MSSSQL兩種資料庫卻是不支援這樣的語法,所以使用Active Record,就無法完全支援order by rand();這樣的語法。
那問題是不是沒有解啊!其實是有的。
只是要自己下指令,而不是使用Active Record。
$this->db->query(‘指令’);
我想,我還是自己用指令寫好了,還要去記一套Action Record的指令語法,也是要花時間的。這樣做的好處,就是不用重新學語法,缺點是,如果我要移到不同的平台上去執行,就可能要重寫語法,真是有一好沒有兩好。
隨機文章
- 免費-偽蝦米 免費的嘸蝦米輸入法 (2007-11-14)
- 模擬出XenServer HA架構 (2016-08-28)
- 主機搬回家囉! (2014-03-12)
- 學到了 OSI7層和Switch設備的L1/L2/L3指的是一樣的東西嗎? (2026-01-02)
- 神奇的TK域名,隨時停用又啟用再停用域名 (2013-02-01)


![[chatGPT 測試] 比較Synolgy TrueNAS 和 OpenMediaVault](https://chihping.aflypen.com/wp-content/uploads/2023/03/synolgo_opensource_comparison-300x169.jpg)


![[chatGPT 測試] 評測開箱 Synology DS918+](https://chihping.aflypen.com/wp-content/uploads/2023/03/hdd-g6fc6f0659_640-300x228.png)
![[chatGPT 測試] DSM 7 有什麼特色](https://chihping.aflypen.com/wp-content/uploads/2023/03/usb-ga13f61ece_1280-300x221.jpg)

