原创 【原創】PostgreSQL 給數組排序

PostgreSQL 支持數組,但是沒有對數據內部元素進行排序的一個函數。  今天我分別用PLPGSQL和PLPYTHONU寫了一個。示例表結構:t_girl=# \d test_array;                        

原创 【原創】REDIS與MYSQL實現標籤的對比

這裏來演示下REDIS和MYSQL之間的數據轉換問題,REDIS 是典型的KEY -VALUE型NOSQL數據庫,並且提供了額外豐富的數據類型。這裏簡單列舉了標籤類型的應用問題。比如在MySQL裏面,對內容的標籤有以下簡單的幾張表,我這裏只

原创 【原創】oracle函數INSTR的MySQL實現

一個遷移項目遇到的,MySQL的instr函數只能查找子串是否在父串中,沒法按照出現的次數進行查找。 這裏我自己寫了一個,以便遷移。當然我這裏僅僅針對的是遷移,可能沒有完全實現原有函數的細節。Oracle 裏用了幾次如下的調用,SQL> s

原创 【原創】POSTGRESQL交叉表的實現

這裏我來演示下在POSTGRESQL裏面如何實現交叉表的展示,至於什麼是交叉表,我就不多說了,度娘去哦。原始表數據如下:t_girl=# select * from score;  name  | subject | score  ----

原创 【原創】mysql 錯誤緩衝堆棧

什麼是錯誤緩衝堆棧呢? 舉個很簡單的例子,比如執行下面一條語句:mysql> INSERT INTO t_datetime VALUES(2,'4','5'); ERROR 1292 (22007): Incorrect datetime 

原创 【原創】日誌表設計一例分析

關於關係表的設計歸根結底有兩個方面。第一,就是完全按照範式理論去設計,一般來說達到第三範式就可以了,或者你可以劃分的更細到達更上一層次。比如第四,第五,第六等等。這種設計有自己的可讀性很強,但是有一點,在檢索數據的時候增加了多張關係表來做關

原创 [原創]如何從數據庫層面檢測兩表內容的一致性

一般來說呢,如何檢測兩張表的內容是否一致,這樣的需求大多在從機上體現,以保證數據一致性。方法無非有兩個,第一呢就是從數據庫着手,第二呢就是從應用程序端着手。 我這裏羅列了些如何從數據庫層面來解決此類問題的方法。當然第一步就是檢查記錄數是否一

原创 【原創】MySQL新舊版本ORDER BY 處理方法

MySQL 的order by 涉及到三個參數:A. sort_buffer_size 排序緩存。B. read_rnd_buffer_size 第二次排序緩存。C. max_length_for_sort_data 帶普通列的最大排序約束

原创 【原創】MySQL 5.7 SYS系統SCHEMA

在說明系統數據庫之前,先來看下MySQL在數據字典方面的演變歷史:MySQL4.1 提供了information_schema 數據字典。從此可以很簡單的用SQL語句來檢索需要的系統元數據了。MySQL5.5 提供了performance_

原创 【原創】Oracle實現PGSQL的generate_series

PostgreSQL 有生成序列的函數,可以方便的進行造數據。這裏我用ORACLE實現了PGSQL的generate_series函數功能。POSTGRESQL.t_girl=# select * from generate_series(

原创 【原創】PostgreSQL 快速創建空表TIPS

MySQL 有一個和優秀的語法 create table ... like , 可以快速複製一張表,創建其副本。 PostgreSQL 也有類似的語法,而且更加靈活,不過要注意些細節。先來看看MySQL 語法: create table .

原创 【原創】MySQL5.7 JSON類型使用介紹

JSON是一種輕量級的數據交換格式,採用了獨立於語言的文本格式,類似XML,但是比XML簡單,易讀並且易編寫。對機器來說易於解析和生成,並且會減少網絡帶寬的傳輸。JSON的格式非常簡單:名稱/鍵值。之前MySQL版本里面要實現這樣的存儲,要

原创 【原創】MySQL5.7 虛擬列實現表達式索引

MySQL自古以來就不提供函數索引這麼複雜的功能。那怎麼在MySQL裏面實現這樣的功能呢? 我們先來看看函數索引的概念。函數索引,也可稱爲表達式索引,也就是基於字段以特定函數(表達式)建立索引來提升查詢性能之需。函數索引的優勢在於更加精確的

原创 【原創】利用MySQL 的GROUP_CONCAT函數實現聚合乘法

MySQL 聚合函數裏面提供了加,平均數,最小,最大等,但是沒有提供乘法,我們這裏來利用MYSQL現有的GROUP_CONCAT函數實現聚合乘法。先創建一張示例表:CREATE TABLE `tb_seq` (   `num` int(10

原创 【原創】MySQL和PostgreSQL 導入數據對比

在虛擬機上測評了下MySQL 和 PostgreSQL 的各種LOAD FILE方式以及時間。 因爲是虛擬機上的測評,所以時間只做參考,不要太較真, 看看就好了。MySQL 工具:    1. 自帶mysqlimport工具。    2.