Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mencari Nilai Maksimum Merentasi Berbilang Lajur dalam Pertanyaan SQL?

Bagaimana untuk Mencari Nilai Maksimum Merentasi Berbilang Lajur dalam Pertanyaan SQL?

Linda Hamilton
Linda Hamiltonasal
2025-01-21 22:35:10230semak imbas

How to Find the Maximum Value Across Multiple Columns in a SQL Query?

Dapatkan nilai maksimum berbilang lajur dalam pertanyaan SQL

Apabila berurusan dengan jadual yang mengandungi berbilang lajur tarikh atau angka, selalunya perlu mendapatkan nilai maksimum untuk setiap baris. Pertimbangkan jadual bernama "TableName" yang mengandungi lajur "Nombor", "Tarikh1", "Tarikh2", "Tarikh3" dan "Kos". Matlamatnya adalah untuk mendapatkan semula jadual baharu yang mengandungi lajur "Nombor", "Tarikh_Terkini_Terbaru" dan "Kos", di mana "Tarikh_Terkini_Terbaru" mengandungi nilai maksimum lajur "Tarikh1", "Tarikh2" dan "Tarikh3".

Penyelesaian menggunakan T-SQL dan SQL Server

Cara yang cekap untuk mencapai hasil ini ialah dengan menggunakan pertanyaan T-SQL berikut:

<code class="language-sql">SELECT [其他字段],
  (SELECT Max(v)
   FROM (VALUES (date1), (date2), (date3),...) AS value(v)) as [MaxDate]
FROM [您的表名]</code>

Dalam pertanyaan ini, pembina nilai jadual "VALUES" digunakan untuk membina senarai nilai daripada lajur "date1", "date2" dan "date3". Fungsi Max() kemudiannya digunakan pada senarai ini untuk menentukan nilai maksimum dan menetapkannya pada lajur "MaxDate". "Medan tambahan" merujuk kepada mana-mana lajur lain yang diperlukan dalam pertanyaan untuk disertakan dalam jadual output.

Dengan melaksanakan penyelesaian ini, anda boleh mendapatkan semula nilai maksimum dengan cekap untuk setiap baris lajur yang ditentukan dalam jadual "Nama Jadual".

Atas ialah kandungan terperinci Bagaimana untuk Mencari Nilai Maksimum Merentasi Berbilang Lajur dalam Pertanyaan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn