我需要join
兩個表上柱,其在一個表被定義爲字符串並且在其它如整數工作。在兩欄中存儲的實際數據是整數。這是設計給我的 - 我無法改變這一點。SQL JOIN上串=整數在任何RDBMS
所以,當我加入MySQL
是好的 - 它無聲地進行轉換。 PostgreSQL
抱怨。有CAST
運營商,我可以添加到查詢有字符串轉換爲整數,但CAST函數是在不同的RDBMS中定義不同。
我可以用它在所有(或許多)RDBMS中工作的方式編寫此查詢嗎?或者,有沒有數據庫抽象層,可以爲我做到這一點? ADODB
已在項目中使用,但我無法看到它是否以及如何有助於解決此問題。
謝謝。
'CAST(expr AS type)'是ANSI SQL,應該可以在所有RDBMS中工作 – zerkms
這就是它在MySQL中定義的方式:CAST(VAR AS UNSIGNED)並且在PostgreSQL中:CAST(VAR AS INTEGER) – aavagyan
爲什麼不在mysql中使用'INTEGER'類型呢? – zerkms