Skip to main content

MySQL Query to retrive all field names which belongs to a particular data type

MySQL Query to get the column names which are of a particular data type

To accomplish this , you should be familiar with how the data types are declared in the information schema table of the DB. To know the Data type name just run this query on your PHP admin or MySql Client:

SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'YOUR_DATABASE_NAME' AND TABLE_NAME = 'YOUR_TABLE_NAME'

This will return the result like:

COLUMN_NAME | DATA_TYPE
-----------------------------
Field1 | int
Field2 | int
Field3 | varchar
Field4 | text
Field5 | longtext
Field6 | float

So we will be keep the above query as the base and will add condition " AND DATA_TYPE = 'DATA_TYPE_NAME' ".




MySQL Query to get all fields in a table which are of Type INTEGER

SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'YOUR_DATABASE_NAME' AND TABLE_NAME = 'YOUR_TABLE_NAME'
AND DATA_TYPE = 'int'

OR

SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'YOUR_DATABASE_NAME' AND TABLE_NAME = 'YOUR_TABLE_NAME'
AND DATA_TYPE LIKE 'int%'


Result:
COLUMN_NAME | DATA_TYPE
-------------------------
Field1 | int
Field2 | int
Field3 | int


To get field names as a string to use in another query use this:

SELECT GROUP_CONCAT(COLUMN_NAME) as IntFields FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'YOUR_DATABASE_NAME' AND TABLE_NAME = 'YOUR_TABLE_NAME' AND DATA_TYPE LIKE 'int%'


The result would be like this:
 IntFields
----------------
  Field1,Field2, Field3

make this as a php string   and use the filed names in another select query like this:

$fields = "Field1,Field2, Field3"; // taken from result of above query

$qry =" SELECT ".$fields." FROM YOUR_TABLE_NAME WHERE YOUR_QUERY_CONDITION";









MySQL Query to get all VARCHAR Type fields in a table

SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'YOUR_DATABASE_NAME' AND TABLE_NAME = 'YOUR_TABLE_NAME'
AND DATA_TYPE LIKE 'varchar%'



MySQL Query to get all field names in a table which are of type TEXT

SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'YOUR_DATABASE_NAME' AND TABLE_NAME = 'YOUR_TABLE_NAME'
AND DATA_TYPE = 'text'



MySQL Query to get all field names in a table which are of type CHAR

SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'YOUR_DATABASE_NAME' AND TABLE_NAME = 'YOUR_TABLE_NAME'
AND DATA_TYPE LIKE 'char'



MySQL Query to get all field names in a table which are of type FLOAT

SELECT COLUMN_NAME, DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = 'YOUR_DATABASE_NAME' AND TABLE_NAME = 'YOUR_TABLE_NAME'
AND DATA_TYPE LIKE 'float%'




Other Options

To display Column names which are of Integer type , you can use
SHOW FIELDS FROM YOUR_DATABASE_NAME.YOUR_TABLE_NAME Where Type like 'int%';

SHOW COLUMNS FROM YOUR_DATABASE_NAME.YOUR_TABLE_NAME Where Type like 'int%';

EXPLAIN YOUR_DATABASE_NAME.YOUR_TABLE_NAME Where Type like 'int%';

DESCRIBE YOUR_DATABASE_NAME.YOUR_TABLE_NAME Where Type like 'int%';

Popular posts from this blog

How to use WiFi adapter on Ubuntu 16.04 desktop PC - Realtek RTL8188EUS 802.11n Wireless USB Network Adapter Driver installation

Installation of Realtek RTL8188EUS 802.11n Wireless USB Network Adapter on Desktop PC having Ubuntu 16.04 OS My PC is running in Ubuntu 16.04 OS, recently I thought of using a dongle wife adapter to access our home's Wifi network. For this I used Realtek RTL8188EUS 802.11n Wireless USB Network Adapter ( Model No: OT-WUA950NM ) This small device cost around Rupees 250/- to Rs 300/- in India. I did the following steps for installation of this Realtek Nano Wifi Adapter: Plug Realtek RTL8188EUS 802.11n Wireless USB Network Adapter to your PC's USB port, Take the terminal application and run the command "lsusb" to list the plugged in usb devices: Myhome:~$ lsusb Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 001 Device 003: ID 0bda:8179 Realtek Semiconductor Corp. R...

How to delete videos from your Youtube Watch History list?

How to Delete Individual or all videos from your Youtube Watch History list? Youtube keeps a fine record of the videos that you had watched earlier. You can view this by visiting the History section. If you want to remove the video's from the list do the following: Logon to Youtube and click on the "History" tab on the left menu to view Watch History ( Read more ) There will be check boxes corresponding to each video in the list Tick the check boxes of the videos which you want to remove Click on " Remove " button to delete the videos.

ICICI prudential Customer portal updated - Option to change password is missing - Know how to change your ICICI prudential password

Recently I received an SMS from ICICI prudential asking for login to their website's customer portal using the phone number as user Id and an autogenerated one time password given in the message as password. The SMS messsage was like this. Dear ***Cust Name*** login to your policy(ies) on www.iciciprulife.com with your user id as **mobile number*** and One time use password as ***password***


Urgent Openings for PHP trainees, Andriod / IOS developers and PHP developers in Kochi Trivandrum Calicut and Bangalore. Please Send Your updated resumes to recruit.vo@gmail.com   Read more »
Member
Search This Blog