2013-12-20 18 views
-1

我有一個表格,其中列出了一些iframe。問題是他們有不同的尺寸。現在我想通過它們的大小對它們進行排序:如何訂購短語中的數字? (MySQL)

這裏有一個例子:<iframe width="576" height="432" src="iframeadress" frameborder="0" allowfullscreen></iframe>

現在我想選擇這些號碼,以便他們通過它們的大小之一。我想到了一個PHP網站,我將寬度的數字作爲變量插入。

但我不知道如何?

或者還有其他解決方案嗎? :)

我只是覺得這一個:Mysql order number/character combined但是如果正確的命令IDK的:/

+0

「* size *」是什麼意思?寬度?高度?總面積? – eggyal

+0

它不介意,其中一個或兩個 – user3092548

回答

0
SELECT * 
FROM TABLE 
ORDER BY width 
+0

我認爲重點是沒有列'寬度',而是包含HTML片段的字符串列。 – eggyal

+0

Egads!我認爲這個問題太簡單了......給你的+1。 –

2

在這種情況下,你可以使用MySQL的ExtractValue() XML功能,用合適的XPath表達式。例如:

ORDER BY ExtractValue(my_column, '//iframe/attribute::width') 

但是,可能希望的適合考慮到您的包括包含HTML片段的字符串列架構的應用:也許含有各種屬性的列,從該HTML可以在表示層被構造你的應用程序會更合適嗎?

更一般地,在您的標題提出的問題(「如何短語訂單號碼?」)要求或者合適解析器(如上述ExtractValue()功能),或者如果短語是一些正規的語言,一個可以通過正則表達式提取匹配的函數(例如,lib_mysqludf_preg)。