我正在嘗試在 mysql 中進行查詢以獲取某一特定行具有特定值的任何列。 在 Mysql 中,我們可以根據列的任何特定值來取得行。
我有一個像這樣的表:
+----+------------+------------+---------------+---------------+---------+----------------+--------- | ID | MSISDN | MissedCall | SponsoredCall | AdvanceCredit | ACvalue | SuitablePackId | AutoTimeStamp | +----+------------+------------+---------------+---------------+---------+----------------+---------------------+ | 1 | 9944994488 | 1 | 0 | 1 | 0 | 1 | 2014-09-18 10:42:55 | | 4 | 9879877897 | 0 | 1 | 0 | 0 | 2 | 2014-09-18 10:42:55 | +----+------------+------------+---------------+---------------+---------+----------------+---------------------+
我需要的是,當我根據 MSISDN 選擇一行時,它應該傳回值為固定的該行的所有列名稱(例如 1)。
因此,在上表中,MSISDN = 9944994488 應該回傳
MissedCall AdvanceCredit SuitablePackId
我嘗試過的是:
SELECT COLUMN_NAME as names FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'bi' AND TABLE_NAME = 'useranalysisresult'
這會傳回表格的列名稱。 但如何取得具有特定值的列名。 感謝您提前提供協助。
評論太長了。
SQL 查詢傳回一組固定的列。您無法根據行更改設定。您可以使用準備好的語句來做您想做的事情,儘管這看起來像是一種神秘的方法。
您可以傳回一個包含連接在一起的值的欄位。像這樣的東西:
這將在所設定的標誌的單列中產生一個清單。