Hi Community,
Enjoy watching the new video on InterSystems Developers YouTube:
⏯ Querying 6 Terabytes of Protected Health Information at Northwell @ Global Summit 2022
SQL is a standard language for storing, manipulating and retrieving data in relational databases.
Hi Community,
Enjoy watching the new video on InterSystems Developers YouTube:
⏯ Querying 6 Terabytes of Protected Health Information at Northwell @ Global Summit 2022
.png)
One of the reasons why I love Cache and Iris is that not only you can do anything you can imagine, also you can do it in a lot of different ways!!.
Imagine that you have an integration running with IRIS connected by ODBC you probably only run SQL queries but you can also create stored procedures and inside write the code to do everything you can imagine.
I'm going to give you some examples but the limit is your imagination!!
You might wonder, wait! I don't know how to create a store procedure in IRIS.
This article is intended to be a simple tutorial on how to create ODBC connections and working with them, since I found starting with them a little bit confused, but I had amazing people to take my hand and walk me through it, and I think everyone deserves that kind of help too.
I'm going to divide each little part in sections, so feel free to jump to the one you feel the need to, although I recommend reading everything.
I'm going to use the sample data created in a previous article, Quick sample database tutorial: Samples.PersistentData, with the properties Name and Age.
I need a stored procedure where I can execute multiple delete from statements.
This will work to create a stored procedure, but when I add in other delete from, get error invalid sql statements when try to create
CREATE PROCEDURE DeleteSpecimenTwo
(IN Specno VARCHAR(50))
BEGIN
DELETE FROM PCONT WHERE PSPECNO = :Specno;
END;
This doesn't work
CREATE PROCEDURE DeleteSpecimenTwo
(IN Specno VARCHAR(50))
BEGIN
DELETE FROM PCONT WHERE PSPECNO = :Specno;
DELETE FROM PSPEC WHERE PSPECNO = :Specno;
END;
Any suggestions
Thanks
Louie
This is a simple tutorial on the quickest way I found to create a sample database for any purposes such as testing, making samples for tutorials, etc.
Now you have a new namespace in a faster way than creating it from the Management Portal - which of course offers way more configuration options.
To select it, quit the SQL Shell writing "q" and then typing 'zn "namespaceName"'.
The Art of Mapping Globals to Classes 1 of 3
Looking to breathe new life into an old MUMPS application? Follow these steps to map your existing globals to classes and expose all that beautiful data to Objects and SQL.
By following the simple steps in this article and the next two you will be able to map all but the craziest globals to Caché classes. For the crazy ones I will put up a zip file of different mappings I have collected over the years. This is NOT for new data; if you don’t already have existing global please just use the default storage.
Newbie here...
I am looking to use fhir to gather patients in our end point that have a certain diagnosis and or certain insurance.
Is this what fhir can be used for?
In the past I have done the normal SQL query/extract to CSV file. Looking to use fhir for this for future.
Thanks in advance for your time
Dean-O
With InterSystems IRIS 2022.2, we introduced Columnar Storage as a new option for persisting your IRIS SQL tables that can boost your analytical queries by an order of magnitude. The capability is marked as experimental in 2022.2 and 2022.3, but will "graduate" to a fully supported production capability in the upcoming 2023.1 release.
The product documentation and this introductory video, already describe the differences between row storage, still the default on IRIS and used throughout our customer base, and columnar table storage and provide high-level guidance on choosing the appropriate storage layout for your use case. In this article, we'll elaborate on this subject and share some recommendations based on industry-practice modelling principles, internal testing, and feedback from Early Access Program participants.
Is it possible to retrieve the SQL-Executing process ID (PID) from a process spawned from a UNION %PARALLEL? I have a value set in the SQL-Executing process that I need to replicate in the UNION %PARALLEL spawned process(es). The SQL-Executing process writes the value to a global subscripted by its PID so determining the SQL-Executing PID from the spawned process is what I need. I expected $ZPARENT from the spawned process would hold the SQL-Executing PID but the PID returned is different.
With thanks,
Michael Hill
Hi guys,
I'm working on a project with my client.
They have a visit table which has about 7,000,000 records. The table is used in a random search page witch holds 20+ conditions to be combined.
The table is defined as below:
CREATETABLEVARCHARHi,
Can anyone please help me how to use regular expression/wild character on a sql query for a pattern like C00.0 to C00.9, C01.0 to C01.9 and so on until C77.0 to C77.9 .
Thanks for your help
Thanks
Jude
The last days I've work with the great new feature: LOAD DATA With this post I would like to share my first experiences with you. The following points do not contain any order or other evaluation. These are only things that I noticed when using the LOAD DATA command. It should also be noted that these points are based on the IRIS Version 2021.2.0.617 which is a preview release. So it may be that my observations do not apply to newer IRIS versions. But maybe they are helpful for others.
I have done my first tests via JDBC.
Hi All,
I want to run an SQL like below
Select ID,Rollno,Marks,Name,Section,Teacher from Marks left outer join Student on Marks.StudentID=Student.ID
Now, the Student.ID is having the encrypted value which is not matching with Marks.StudentID (as this is clear value).
I can get the clear value using encrypted value as follow
^StoreValue("EncryptStudentID",Student.ID)=$LB("123"). That 123 is the clear Student.ID which I need to match in SQL query (ON clause).
Now I Need to fetch the data from sql query matching both clear values.
Hi All,
I have a below query for which I need help.
I have a persistent class User.Cars.cls. The properties of this class is mapped through Global mapping with global (^CAR(Date,CarSerialno,Seq)).
Property CarNumber as %String (TRUNCATE=1) [SqlFieldName= CAR_Number];
Mapping of 5th Piece of ^CAR global to CarNumber property.
For e.g.^CAR(Date,CarSerialno,Seq)=1^2^3^4^BMW 4567^6^7
To increase the security we have encrypted the database. 5th Piece is also encrypted in global (New value after encryption: 'ASAD=4367' through some tool technique).
Python has become the most used programming language in the world (source: https://www.tiobe.com/tiobe-index/) and SQL continues to lead the way as a database language. Wouldn't it be great for Python and SQL to work together to deliver new functionality that SQL alone cannot? After all, Python has more than 380,000 published libraries (source: https://pypi.org/) with very interesting capabilities to extend your SQL queries within Python. This article details how to create new SQL Stored Procedures in InterSystems IRIS Database using Embedded Python.
Hi All,
I am currently using D $SYSTEM.SQL.Shell() command or management portal to retrieve the data from database. I just learned we can also run cache table sql queries in MS access. MS access already installed on my machine.
I need to ask how I can connect my database of USER or sample namespace in MS access to run these SQL queries.
Thanks in advance!!
Hi All,
I am having an SQL query (mentioned below). When I am running this query it is taking 90 min to retrieve all records (approx 1 million records).
Fetching data from 5 tables using inner join in cache. Relative cost displaying 10 million
I wan to confirm How this query can be optimized
SelectFromINNERThanks in advance!!
Hi All,
I am a beginner in cache. I need to extract data from multiple tables (4-5) tables based on an SQL query . The data is more than 9 lakhs of records (i checked using count). The total number columns is 16.
When I am running this SQL query through management portal, I am getting time out exception. Could you please suggest how I can retrieve those records. Which way will be good (Dynamic query using %SQL.Statement or Embedded SQL (not known to me) or Writing to a global will help or not).
Hi Guys
I've been using the example code %SQL.ExportMgr taken from here (an example from the intersystems community) an am having a few problems with it.
The code I have is below, and I'm having the following problems:
Hi community,
I am working on Converting Non HL7 message (Using record maps) into HL7 message.
1.Can anyone share few details how to save Non HL7 message into SQL table and the converted HL7 message into SQL table
2.In Message Viewer is there any SQL tables are linked to the session id or where the information regarding the message will be stored? Will the message trace details are stored in globals or in SQL table,If yes can anyone share the details in which tables or globals will it be stored?
.png)
Joe
Hello Team,
I need a help in the following error I am getting while running the SQL Query. I am running the SQL Query from different table using inner join. I run this everyday for last 90 days but for few days while extracting the data through this query I am getting this error. Please assist.
SQLException was thrown: Incorrect list format: 0 >= 0_SQLSTATE: S1000
SQLException was thrown: Incorrect list format: 0 >= 0_SQLSTATE: S1000
Error getting attributeColumn: Name
Error getting attributeColumn: Amount
Error getting attributeColumn: RollNumber
Thanks in advance !!
Hi everyone.
I have a use case where I'm using embedded SQL within a Business Process to interact with a SQL table. However, when it comes to deployment into our production, the table wont form part of the deployment package created from the production.
Beyond manually creating the table on the production system, is there a standard way of ensuring that a table needed for a class is created during deployment?
Hi Developers,
Enjoy watching the new video on InterSystems Developers YouTube:
I have this code:
SELECTidclientWhat i do to access the "client" name?
Hello!
I'm new to the system I'm working on, and I have a part of a statement that needs to grab the previous month.
....and MONTH(TX3.date_of_service)= MONTH(dateadd(mm,-1,GETDATE()))
However, when it hits January, I'm left with month 0.
Does anyone know a workaround to grab December of the previous year, while still functioning normally for the rest of the current year.
Thank you!
As you may well remember from Global Summit 2022 or the 2022.2 launch webinar, we're releasing an exciting new capability for including in your analytics solutions on InterSystems IRIS. Columnar Storage introduces an alternative way of storing your SQL table data that offers an order-of-magnitude speedup for analytical queries. First released as an experimental feature in 2022.2, the latest 2022.3 Developer Preview includes a bunch of updates we thought were worth a quick post here.
Date range queries going too slow for you? SQL Performance got you down? I have one weird trick that might just help you out! (SQL Developers hate this!)*
If you have a class that records timestamps when the data is added, then that data will be in sequence with your IDKEY values - that is, TimeStamp1 < TimeStamp2 if and only if ID1 < ID2 for all IDs and TimeStamp values in table - then you can use this knowledge to increase performance for queries against TimeStamp ranges. Consider the following table:
Class User.TSOrder extends %Persistent
{
Property TS as %TimeStamp;
Property Data as %String (MAXLEN=100, MINLEN=200);
Index TSIdx on TS;
Index Extent [type=bitmap, extent];
}Is there a way I can call %Save() on a %Persistent object and at the same time prevent indices from being built?
Hello,
I tested the query on the Config.ConfigFile table of the Namespace %SYS, it returned 3 lines and a fatal error:
SELECTFROM.png)
I tested the same query on other IRIS instances (including a 2021.1 instance) and got the same error.
Is it a bug in IRIS or is there something wrong with the installations?
Anyone who can test and leave in the answers if they got the same result, I would be grateful.
Thank you for your attention.
A good writer is supposed to draw you in with the title and bury the answer somewhere in the article. I suppose this makes me a bad writer – don’t think less of me, my whole feeling of self-worth comes from the opinions of internet strangers!