Kenal pasti nama lajur dengan nilai yang konsisten untuk baris tertentu
P粉738046172
P粉738046172 2023-12-11 09:56:34
0
1
343

Saya cuba membuat pertanyaan dalam mysql untuk mendapatkan mana-mana lajur yang mempunyai nilai khusus untuk baris tertentu. Dalam Mysql kita boleh mendapatkan baris berdasarkan mana-mana nilai khusus lajur.

Saya ada meja seperti ini:

+----+------------+------------+---------------+---------------+---------+----------------+---------
| 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 |
+----+------------+------------+---------------+---------------+---------+----------------+---------------------+

Apa yang saya perlukan ialah apabila saya memilih baris berdasarkan MSISDN, ia harus mengembalikan semua nama lajur baris tersebut dengan nilai tetap (mis. 1).

Jadi dalam jadual di atas, MSISDN = 9944994488 harus kembali

MissedCall 
AdvanceCredit 
SuitablePackId

Apa yang saya cuba ialah:

SELECT COLUMN_NAME as names 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE TABLE_SCHEMA = 'bi' 
AND TABLE_NAME = 'useranalysisresult'

Ini mengembalikan nama lajur jadual. Tetapi bagaimana untuk mendapatkan nama lajur dengan nilai tertentu. Terima kasih atas bantuan anda terlebih dahulu.

P粉738046172
P粉738046172

membalas semua(1)
P粉765570115

Komen terlalu panjang.

Pertanyaan SQL mengembalikan set lajur tetap. Anda tidak boleh menukar tetapan secara berturut-turut. Anda boleh menggunakan pernyataan yang disediakan untuk melakukan apa yang anda mahu, walaupun ini mungkin kelihatan seperti pendekatan yang misteri.

Anda boleh mengembalikan lajur yang mengandungi nilai yang digabungkan bersama. Sesuatu seperti ini:

select concat_ws(',',
                 (case when MissedCall = 1 then 'Missed Call' end),
                 (case when SponsoredCall = 1 then 'Sponsored Call' end),
                 . . .
                )
from useranalysisresult;

Ini akan menjana senarai dalam satu lajur set bendera.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!