2012-11-07 44 views
0

好吧,讓我們看看我是否可以用這個詞來表達。我有2個表,有類似的數據。它們旨在用作系統其餘部分使用的庫存數據。其中一個表是最近增加的,並且所述表上的2列數據需要與其他表上的數據相匹配,所以我可以嘗試更快地運行查詢。這就是說。我需要修復的列與我想要的那些列的數據非常相似。正如我可以使用like從第二個表中選擇查詢到第一個表並實際獲取我想要的數據,但我無法做到相反。MySQL查詢可以從一個表中獲取股票數據並更新第二個表上的LIKE數據

因此,繼承人我想知道,如果它甚至可能只是做它基於查詢。基本上我想運行第二張表,我想要2列數據與第一張表中的數據匹配。它們是varchar列,因爲它們只是字符串。但是,使用運動我想在第一個表一個例子,我有:

紐約巨人

新英格蘭愛國者

在第二個表

我:

愛國者

巨人

雖然此查詢正在進行,但我想更新第二列中的行以匹配第一個表中的數據。這可能只是基於單獨的查詢,或者這是我必須提出一些層次的服務器端邏輯來完成?

在一張表中,我正在處理大約4000行,我正在與1001合作,不確定這是否有幫助,但值得一提。

+0

對不起,你想怎麼做?我可以想象,這不僅取決於實際的表結構(在你的問題中缺失),還取決於其中的數據(部分在你的問題中給出)。我認爲你最好給出一個更具體的例子,你想達到什麼,例如狀態以兩個表格的形式以及以表格的形式得到的結果。 – hakre

+0

讓我們假裝我有2個表,其中一個是隻有一個字符串的列,它們是名稱,DB中的所有其他表都使用這些字符串作爲基礎,以避免來自基於用戶的輸入的變化。另一個表有2列,其中它具有來自第一個表的字符串的部分版本,我想取這些列並將它們匹配到表上的列。所以他們都是相同的字符串敬而遠之,所以我可以避免長期運行的基於LIKE的查詢 – chris

+0

我已經添加了一個答案,顯示如何以適合問題的形式實際獲取現有數據。考慮它作爲額外的服務。然而,這不是一個答案,只是一個冗長的評論。 – hakre

回答

0

使用mysql命令行客戶端登錄數據庫並選擇數據庫。然後輸入類似:

mysql> describe config; 

將輸出表配置的定義。複製並將其添加到您的問題:

+--------+-------------+------+-----+---------+----------------+ 
| Field | Type  | Null | Key | Default | Extra   | 
+--------+-------------+------+-----+---------+----------------+ 
| id  | int(11)  | NO | PRI | NULL | auto_increment | 
| option | varchar(45) | NO |  | NULL |    | 
+--------+-------------+------+-----+---------+----------------+ 

爲您的兩張桌子做。

然後還得到這些表格一些示範性的數據,如:

mysql> select * from config LIMIT 5; 

你那麼可以複製,再粘貼:

+----+---------------------------+ 
| id | option     | 
+----+---------------------------+ 
| 1 | value for option with ID1 | 
| 2 | value for option with ID2 | 
+----+---------------------------+ 

這應該使之更加具體你問什麼,至少現有的數據。然後試着制定你想達到的結果,最好用相似的佈局。

相關問題