Rumah pangkalan data tutorial mysql MySQL字段自增自减的SQL语句示例介绍_MySQL

MySQL字段自增自减的SQL语句示例介绍_MySQL

May 27, 2016 pm 02:12 PM
update artikel

bitsCN.com MySQL的自增语句大家应该都很熟悉 也很简单

update `info` set `comments` = `comments`+1 WHERE `id` = 32

这样就可以了,但是有时候我们会涉及到做减法,

例如:文章的评论数,在删除或者锁定了一条评论之后需要对该文章总评论数减一

comments smallint(5) unsigned 文章评论总数统计字段 无符号即 0 ~ 65535 之间的数值

1. 通常情况下是可以类似上面自增的方法 把 +号 改成 -号 就行了,但问题是如果当前 comments 统计数值为 0 时 再做减法将会变成该字段类型的最大数值 65535

update `info` set `comments` = `comments`-1 WHERE `id` = 32

2. 为避免这个问题一般的想法只能是先根据 id 主键查询出文章 comments 统计字段值,再通过PHP做减法,然后再 update 一次,前后总共需要执行两次SQL命令

今天google查了下没找到这方面的资料,看了看MySQL的语法函数等等。。。试了下面的语句可以直接一条语句完成,也就是加个 if 判断,如下示例:

update `info` set `comments` = IF(`comments`
默认comments为0时, comments-1 = 65535;但测试了下 如果直接 判断 comments-1=65535 好像不行,不知道什么原因,对这个不是很熟悉不知道是不是 这里的 if 不支持 = 号,但是 comments-1 >= 65535 可以成立,于是当 comments 为 0 时,IF(`comments`-1>=65535,0,`comments`-1) 将返回 0提示:最大数值 65535 是 smallint 无符号状态下的最大值,其他字段类型请进行相应调整

----------------------------------------------------------------------------------------------------------------------

2014/02/03 补充:刚开始是这么写的,后来发现太笨了,稍微改下:

update `info` set `comments` = IF(`comments`
要减x,就判断是否小于xbitsCN.com

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Betulkan: Semakan kemas kini Google Chrome gagal dengan kod ralat 3: 0x80040154 Betulkan: Semakan kemas kini Google Chrome gagal dengan kod ralat 3: 0x80040154 Apr 13, 2023 pm 05:46 PM

Google Chrome ialah salah satu pelayar paling popular di dunia dan ramai pengguna lebih suka menggunakannya sebagai penyemak imbas lalai pada PC Windows mereka. Chrome menawarkan pelbagai ciri yang menjadikan pengalaman menyemak imbas menyeronokkan dan mudah, dan oleh itu, ia kekal sebagai salah satu penyemak imbas yang paling dipercayai. Tetapi, seperti mana-mana penyemak imbas lain, malah Chrome mempunyai kelemahannya sendiri, dan ia juga terdedah kepada pepijat dan gangguan apabila anda amat memerlukannya. Satu ralat sedemikian ialah Kod Ralat 3: 0x80040154, yang berlaku semasa menyemak kemas kini Google Chrome. Mesej ralat berbunyi "Ralat berlaku semasa menyemak kemas kini. Semakan kemas kini gagal dimulakan (Kod ralat 3: 0x80080005) atau (Ralat

Bagaimanakah saya boleh membuat wang dengan menerbitkan artikel di Toutiao hari ini? Bagaimana untuk mendapatkan lebih banyak pendapatan dengan menerbitkan artikel di Toutiao hari ini! Bagaimanakah saya boleh membuat wang dengan menerbitkan artikel di Toutiao hari ini? Bagaimana untuk mendapatkan lebih banyak pendapatan dengan menerbitkan artikel di Toutiao hari ini! Mar 15, 2024 pm 04:13 PM

1. Bagaimanakah anda boleh membuat wang dengan menerbitkan artikel di Toutiao hari ini? Bagaimana untuk mendapatkan lebih banyak pendapatan dengan menerbitkan artikel di Toutiao hari ini! 1. Aktifkan hak dan kepentingan asas: Artikel asal boleh memperoleh keuntungan melalui pengiklanan dan video mestilah asli dalam mod skrin mendatar untuk memperoleh keuntungan. 2. Aktifkan hak 100 peminat: jika bilangan peminat mencecah 100 peminat ke atas, anda boleh mendapat keuntungan daripada tajuk mikro, ciptaan Soal Jawab asal dan Soal Jawab. 3. Menegaskan karya asli: Karya asal termasuk artikel, tajuk mikro, soalan, dsb., dan dikehendaki melebihi 300 patah perkataan. Sila ambil perhatian bahawa jika karya yang diciplak secara haram diterbitkan sebagai karya asli, mata kredit akan ditolak, malah sebarang keuntungan akan ditolak. 4. Ketegakan: Apabila menulis artikel dalam bidang profesional, anda tidak boleh menulis artikel merentas bidang sesuka hati Anda tidak akan mendapat cadangan yang sesuai, anda tidak akan dapat mencapai profesionalisme dan ketepatan kerja, dan sukar untuk menarik peminat. dan pembaca. 5. Aktiviti: aktiviti tinggi,

Bagaimana untuk mendayakan/melumpuhkan kemas kini automatik VS Code Bagaimana untuk mendayakan/melumpuhkan kemas kini automatik VS Code Apr 28, 2023 am 09:28 AM

Jika anda menggunakan Kod Visual Studio (VSCode) dan memikirkan cara untuk melumpuhkan kemas kini perisian automatiknya dan cara melumpuhkan kemas kini automatik sambungannya, kemudian baca artikel ini. Jika anda tidak kerap menggunakan VSCode, buka editor selepas tempoh yang lama dan ingin mendayakan kemas kini automatik, artikel ini juga akan membimbing anda berbuat demikian. Mari kita bincangkan secara terperinci cara berbeza untuk mendayakan atau melumpuhkan kemas kini automatik VSCode. Jadual Kandungan Kaedah Satu: Gunakan Tetapan untuk Mendayakan/Lumpuhkan Kemas Kini Automatik VSCode Langkah 1: Buka Kod VS dan klik simbol berbentuk gear di sudut kiri bawah. Langkah 2: Klik Tetapan dalam senarai yang muncul. Langkah 3: Taip kemas kini dalam bar carian dan tekan enter. Cari Kemas Kini: Corak 4

KDE Plasma 6.1 membawa banyak peningkatan pada desktop Linux yang popular KDE Plasma 6.1 membawa banyak peningkatan pada desktop Linux yang popular Jun 23, 2024 am 07:54 AM

Selepas beberapa prakeluaran, pasukan pembangunan KDE Plasma melancarkan versi 6.0 persekitaran desktopnya untuk sistem Linux dan BSD pada 28 Februari, menggunakan rangka kerja Qt6 buat kali pertama. KDE Plasma 6.1 kini hadir dengan beberapa ciri baharu t

Penyelesaian kepada penggunaan CPU tinggi telemetri keserasian Microsoft Penyelesaian kepada penggunaan CPU tinggi telemetri keserasian Microsoft Mar 16, 2024 pm 10:16 PM

Apabila kita menggunakan sistem win10, kita kadang-kadang menghadapi situasi di mana komputer menjadi tersekat Kemudian apabila kita menyemak proses latar belakang, kita mendapati bahawa proses telemetri keserasian Microsoft mengambil jumlah sumber yang tinggi. Pengguna boleh cuba menyahpasang perisian perlindungan pihak ketiga dan kemudian mencuba but bersih untuk beroperasi Biarkan tapak ini dengan teliti memperkenalkan kepada pengguna penyelesaian kepada penggunaan CPU yang tinggi bagi Microsoftcompatibilitytelemetry. Penyelesaian kepada penggunaan CPU yang tinggi bagi Microsoftcompatibilitytelemetry Kaedah 1: Cuba selepas menyahpasang perisian perlindungan pihak ketiga

Bagaimana untuk menggunakan kenyataan UPDATE dalam SQL Bagaimana untuk menggunakan kenyataan UPDATE dalam SQL Jun 02, 2023 pm 09:13 PM

Pernyataan SQLUPDATE Pernyataan Kemas kini digunakan untuk mengubah suai data dalam jadual. Sintaksnya adalah seperti berikut: KEMASKINI nama jadual SET nama lajur = nilai baharu DI MANA nama lajur = nilai tertentu jadual "Orang": LastNameFirstNameAddressCityGatesBillXuanwumen10BeijingWilsonChamps-Elysees Kemas kini lajur dalam baris tertentu UPDATEPerson SETFirstName="NamesulWHERELast"

Penerokaan mendalam tentang butiran penggunaan UPDATE dalam MySQL Penerokaan mendalam tentang butiran penggunaan UPDATE dalam MySQL Oct 11, 2022 pm 07:32 PM

Dalam MySQL, anda boleh menggunakan pernyataan UPDATE untuk mengubah suai dan mengemas kini data dalam satu atau lebih jadual. Artikel berikut akan membantu anda meneroka butiran penggunaan UPDATE dalam MySQL Saya harap ia akan membantu anda.

Fitbit Ace LTE menerima kemas kini utama dengan permainan baharu, pembayaran tanpa sentuh dan ciri lain Fitbit Ace LTE menerima kemas kini utama dengan permainan baharu, pembayaran tanpa sentuh dan ciri lain Aug 08, 2024 pm 09:39 PM

Fitbit Ace LTE telah dilancarkan secara rasmi pada bulan Mei, tetapi kini hanya tersedia di AS. Jam tangan pintar itu ditujukan khusus kepada kanak-kanak, yang boleh menerima ganjaran untuk permainan melalui gaya hidup yang lebih aktif, manakala ibu bapa sentiasa boleh memantau mereka.

See all articles